WinAPI:midiOutLongMsg-システム専用のMIDIメッセージを出力装置に送信
1227 ワード
ヒント:midiOutLongMsgにバッファを渡す前に、midiOutPrepareHeader準備を呼び出します.また、GMEM_MOVEABLE、GMEM_SHAREを使用する、GlobalAllocを呼び出してTMidiHdrおよびlpDataが指すバッファにメモリを割り当て、GMEM_MOVEABLEを使用する.
// :
midiOutLongMsg(
hMidiOut: HMIDIOUT; { }
lpMidiOutHdr: PMidiHdr; {TMidiHdr }
uSize: UINT {TMidiHdr }
): MMRESULT; { 0; :}
MMSYSERR_INVALHANDLE = 5; { }
MIDIERR_UNPREPARED = 64; { TMidiHdr }
MIDIERR_NOTREADY = 67; { }
//TMidiHdr midihdr_tag :
midihdr_tag = record
lpData: PChar; { }
dwBufferLength: DWORD; { }
dwBytesRecorded: DWORD; { , }
dwUser: DWORD; { }
dwFlags: DWORD; { }
lpNext: PMidiHdr; { ( )}
reserved: DWORD; { ( )}
dwOffset: DWORD; { , }
dwReserved: array[0..7] of DWORD; { ( )}
end;
//dwFlags :
MHDR_DONE = $00000001; { }
MHDR_PREPARED = $00000002; { midiInPrepareHeader midiOutPrepareHeader }
MHDR_INQUEUE = $00000004; { ( )}
MHDR_ISSTRM = $00000008; { }
// :