指定された MIDI 出力デバイスの能力を取得します。
MMRESULT midiOutGetDevCapsA(
UINT_PTR uDeviceID, // デバイスID
PMIDIOUTCAPS pMidiOutCaps, // 構造体アドレス
UINT cbMidiOutCaps // 構造体サイズ
);
WINMM.DLL
MIDI 出力デバイスの ID を指定します。 0 から、存在する MIDI 出力デバイスの数より 1 少ない値までの間の数になります。また、 MIDI Mapper を指定するのに、デバイス ID として -1 (MIDI_MAPPER) を指定することができます。
この引数に、有効なデバイスハンドルを指定することもできます。
MIDIOUTCAPS 構造体のアドレスを指定します。この構造体に、デバイスの能力に関する情報が格納されます。
MIDIOUTCAPS 構造体のサイズをバイト単位で指定します。このパラメータで指定されたサイズぶんの情報のみが pMidiOutCaps パラメータで指定された構造体に格納されます。このパラメータに 0 を指定した場合には、情報を何も格納せずに 0 (MMSYSERR_NOERROR) を返します。
関数が成功すると 0 (MMSYSERR_NOERROR) が返ります。
関数が失敗すると、以下のエラーが返ります。
| 値 | 意味 |
|---|---|
| 2 (MMSYSERR_BADDEVICEID) | 指定されたデバイス ID は範囲外です。 |
| 6 (MMSYSERR_NODRIVER) | ドライバがインストールされていません。 |
| 7 (MMSYSERR_NOMEM) | メモリの確保またはロックに失敗しました。 |
| 11 (MMSYSERR_INVALPARAM) | 指定されたポインタまたは構造体は無効です。 |
システムに存在する MIDI 出力デバイスの数を取得するには、 midiOutGetNumDevs 関数を使います。
Windows 95 以降 / Windows NT 3.1 以降