midiOutShortMsg 函式 (mmeapi.h)
midiOutShortMsg 函式會將簡短 MIDI 訊息傳送至指定的 MIDI 輸出裝置。
語法
MMRESULT midiOutShortMsg(
HMIDIOUT hmo,
DWORD dwMsg
);
參數
hmo
MIDI 輸出裝置的句柄。 此參數也可以是MIDI數據流轉換成 HMIDIOUT的句柄。
dwMsg
MIDI 訊息。 訊息會封裝成 DWORD 值,其中包含低序位元組訊息的第一個字節。 訊息會封裝至此參數,如下所示。
Word | Byte | 使用方式 |
---|---|---|
高 | 高序 | 未使用。 |
低序 | 如有需要,MIDI 數據的第二個字節 () 。 | |
低 | 高序 | 如有需要,MIDI 數據的第一個字節 () 。 |
低序 | MIDI 狀態。 |
兩個 MIDI 數據位元組是選擇性的,視 MIDI 狀態位元組而定。 當一系列訊息具有相同的狀態位元組時,可以在數列中的第一個訊息之後省略狀態位元組,以建立執行中狀態。 封裝訊息以執行狀態,如下所示:
Word | Byte | 使用方式 |
---|---|---|
高 | 高序 | 未使用。 |
低序 | 未使用。 | |
低 | 高序 | 如有需要,MIDI 數據的第二個字節 () 。 |
低序 | MIDI 數據的第一個字節。 |
傳回值
如果成功或發生錯誤,則傳回MMSYSERR_NOERROR。 可能的錯誤值包括下列各項:
傳回碼 | Description |
---|---|
|
應用程式會將沒有狀態位元組的訊息傳送至數據流句柄。 |
|
硬體正忙於其他數據。 |
|
指定的裝置句柄無效。 |
備註
此函式可用來傳送系統專屬或串流訊息以外的任何MIDI訊息。
此函式可能不會傳回,直到訊息傳送至輸出裝置為止。 您可以在串流在相同的裝置上播放時傳送簡短訊息 (,但在此案例中無法使用執行狀態) 。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | mmeapi.h (包含 Windows.h) |
程式庫 | Winmm.lib |
Dll | Winmm.dll |