<Return[MN]><Top>

midiInAddBuffer

Declare Function Api_midiInAddBuffer& Lib "winmm" Alias "midiInAddBuffer" (ByVal hMidiIn&, lpMidiInHdr As MIDIHDR, ByVal uSize&)

Declare Function midiInAddBuffer Lib "winmm" Alias "midiInAddBuffer" (ByVal hMidiIn As Long, lpMidiInHdr As MIDIHDR, ByVal uSize As Long) As Long

入力バッファを指定のオープンしている MIDI 入力デバイスに送信する。この関数は、システム排他メッセージに対して使う。

パラメータ
hMidiIn
    MIDI 入力デバイスのハンドルを指定する。
lpMidiInHdr
    バッファを識別する MIDIHDR 構造体のアドレスを指定する。
cbMidiInHdr
    MIDIHDR 構造体のサイズをバイト単位で指定する。

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

    値                                             

説明                                                                                                 

    MIDIERR_STILLPLAYING

lpMidiInHdr パラメータで指定されたバッファは、まだキューにある。

    MIDIERR_UNPREPARED

lpMidiInHdr パラメータで指定されたバッファは、まだ準備されていない。

    MMSYSERR_INVALHANDLE

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

    MMSYSERR_INVALPARAM

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

    MMSYSERR_NOMEM

システムはメモリを割り当てられないか、またはロックできない。


解説
    バッファがいっぱいのときは、アプリケーションへ送り返される。
    バッファは midiInAddBuffer 関数に渡す前に、midiInPrepareHeader 関数を使って準備されていなければならない。