<Return[MN]><Top>

midiOutLongMsg

Declare Function Api_midiOutLongMsg& Lib "winmm" Alias "midiOutLongMsg" (ByVal hmo&, lpMidiOutHdr As MIDIHDR, ByVal cbMidiOutHdr&)

Declare Function midiOutLongMsg Lib "winmm" (ByVal hmo As Long, lpMidiOutHdr As MIDIHDR, ByVal cbMidiOutHdr As Long) As Long

指定された MIDI 出力デバイスにシステム排他 MIDI メッセージを送信する。

パラメータ
hmo
    MIDI 出力デバイスのハンドルを指定する。このパラメータには、HMIDIOUT にキャストされた MIDI ストリームのハンドルも指定できる。
lpMidiOutHdr
    MIDI バッファを識別する MIDIHDR 構造体のアドレスを指定する。
cbMidiOutHdr
    MIDIHDR 構造体のサイズをバイト単位で指定する。

戻り値
    関数が成功すると、MMSYSERR_NOERROR が返る。関数が失敗すると、エラーが返る。返されるエラー値は次のとおりである。

    値                                               

説明                                                                                 

    MIDIERR_NOTREADY

ハードウェアは、ほかのデータの処理中である。 

    MIDIERR_UNPREPARED

lpMidiOutHdr パラメータで指定したバッファは準備されていない。

    MMSYSERR_INVALHANDLE

指定されたデバイスハンドルは無効である。

    MMSYSERR_INVALPARAM

指定されたポインタまたは構造体は無効である。

 

解説
    バッファが midiOutLongMsg 関数に渡される前に、midiOutPrepareHeader 関数を使ってバッファを準備しなければならない。

    MIDI 出力デバイスドライバは、データを同期的に送信するか、または非同期的に送信するかを決定する。