• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    VB利用高級音頻函數編寫多媒體播放器

    發布: 2007-7-14 20:28 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 25次 | 進入軟件測試論壇討論

    領測軟件測試網 作者:劉明

    現在使用VB編程的朋友越來越多了.但是如何使用VB來編寫播放多媒體文件的播放器呢?本篇將詳細的介紹如何利用高級音頻函數編寫媒體播放器!

    內容提要:
    了解高級音頻函數各參數的意思;
    提供一些高級音頻函數的命令集;
    編寫一個簡單的多媒體播放器程序;
      
    高級音頻函數有兩條:1.mciSendString;2.mciSendCommand.前者稱為命令字符串函數,后者稱為命令消息函數.命令字符串函數顧名思義就是利用字符串作為命令來控制媒體設備,它最適合高級編程語言如:VB.而命令消息函數則是利用消息的發送來控制媒體設備,它最適合利用常數作命令的編程語言如:VC++.因此我們這里只講解命令字符串函數的使用方法.

    函數原型:
    mciSendString(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long

    參數說明:
    lpstrCommand:要發送的命令字符串.字符串結構是:[命令][設備別名][命令參數].
    lpstrReturnString:返回信息的緩沖區,為一指定了大小的字符串變量.
    uReturnLength:緩沖區的大小,就是字符變量的長度.
    hwndCallback:回調方式,一般設為零.(*函數執行成功返回零,否則返回錯誤代碼)

      使用此函數能播放哪些媒體文件呢?不用擔心,打開win.ini文件看看便知.找到[mci extensions]部分這里記錄了你的計算機所能使用的所有媒體文件名,如:mid=Sequencer,等號左邊的表示媒體文件的擴展名,等號右邊的表示打開此媒體文件的設備名.

      知道了哪些文件可以播放后就可以播放媒體文件了嗎?No!你還得知道如何使用命令字符串來控制設備.下面列出的命令集是各種設備同時都具有的也是關鍵的命令集:

    1.Open device_name [alias alias_name]:Open命令用來打開device_name設備并取別名為alias_name,device_name為媒體文件名或設備名,alias_name是為device_name取的別名.如:Open C:\windows\kl.wav alias WAV.意思是打開:c:\windows\kl.wav這個文件并取別名為WAV,在經后的操作過程中就可用這個別名來控制它所打開的設備了.

    2.Close alias_name:Close命令用來關閉別名為alias_name的設備,在關閉程序時必須調用該命令否則其它的程序將無法打開該設備.

    3.Play alias_name:Play命令用來播放別名為alias_name的媒體文件.成功的打開設備后就可調用該命令來播放媒體文件了.

    4.Stop alias_name:Stop命令用來停止播放媒體文件.

    5.Seek alias_name:Seek命令用來設置當前播放的位置.(需事先設定時間格式)

    6.Set alias_name[audio all off][audio all on][time format ms]:Set命令用來設置設備的各種狀態.如:靜音,有聲音,時間格式為毫秒等.

    7.Status alias_name[length][mode][position]:Status命令用來取得設備的狀態.如:該媒體文件的長度,該媒體文件所處狀態,該媒體文件的當前位置等.

    由于篇幅有限這里就不再說更多的命令集了.有興趣的朋友可到我的網址詳細的查詢.

    下面將介紹如何利用上面說的函數和命令集為我們工作:

    1.新建一工程并在工程中添加一公用對話框(Common Dialog),再添加一模塊(Module).
    2.在模塊中聲明命令字符串函數:
    Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
    3.添加一按鈕并在按鈕的Click事件中加入以下代碼:
    dim dwReturn as String * 256
    me.CommonDialog1.ShowOpen
    if(mciSendString("Open " + Commondialog1.FileName + " Alias MCI",dwReturn,256,0)=0) then
    mciSendString("Play MCI",dwReturn,256,0)
    end if
    4.最后在窗體的UnLoad事件中加入以下代碼:
    mciSendString("Close MCI")
    是不是很簡單!才用了七行代碼就編成了一個簡單的播放器?

    有興趣的朋友可到我的主頁查詢,也可給我發E-Mail:
    我的主頁:http://www.tianfu.net/~kennyok(內有詳細的說明和豐富的源程序)
    我的E-mail:lucykenny@990.net
    成都:劉明
    地址:成都市新南門青平巷19號 

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>