複製鏈接
請複製以下鏈接發送給好友

midiOutShortMsg

鎖定
midiOutShortMsg是向聲卡發送命令,聲卡收到此函數後根據參數值發出聲音。
外文名
midiOutShortMsg
用    途
聲卡發送命令,聲卡收到此函數後根據參數值發出聲音
2、API聲明:
Private Declare Function midiOutShortMsg Lib "winmm.dll" (ByVal hMidiOut As Long, ByVal dwMsg As Long) As Long
注意:要正確使用此命令, 需要配合midiOutOpen(開啓聲卡)和midiOutClose(關閉聲卡)。下面是他們的API聲明
Private Declare Function midiOutOpen Lib "winmm.dll" (lphMidiOut As Long, ByVal uDeviceID As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long
Private Declare Function midiOutClose Lib "winmm.dll" (ByVal hMidiOut As Long) As Long
3、使用格式:
ret=midiOutShortMsg(midiout, &H90 + ((flip) * &H100) + (volume * &H10000) + channel)
説明:
midiout是midioutopen開啓設備成功後就會提供這個Long型變量,flip是Integer型參數,代表音的高低,相鄰為半音,如60和61,隔1為全音,如63和65;volume為設備的音量值,普遍使用的是0-100之間的值。channel為通道,默認使用0即可。所謂通道就是MIDI音樂中的音層,就像電子琴的16個音層,有節奏通道,和絃通道,低音通道等等。最大可以支持16層,可以取其任意一個值即可。
注意: 使用完此命令後馬上調用midioutclose關閉設備。