midiOutOpen

midiOutOpen 関数は再生用に MIDI 出力デバイスをオープンする。

midiOutOpen phmo, uDeviceID, dwCallback, dwInstance, fdwOpen

phmo : [intptr] HMIDIOUT ハンドルへのポインタ。この場所にオープンされた MIDI 出力デバイスを識別するハンドルが格納される。このハンドルは他の MIDI 出力関数の呼び出しでデバイスを識別するために使用される。
uDeviceID : [int] オープン対象の MIDI 出力デバイスの識別子。
dwCallback : [int] コールバック関数へのポインタ、イベントハンドル、スレッド識別子、または MIDI 再生中に再生の進捗に関するメッセージを処理するために呼び出されるウィンドウやスレッドのハンドル。コールバックが不要な場合は NULL を指定する。コールバック関数の詳細は MidiOutProc を参照。
dwInstance : [int] コールバックへ渡されるユーザインスタンスデータ。このパラメータはウィンドウコールバックやスレッドでは使用されない。
fdwOpen : [int] デバイスを開くためのコールバックフラグ。次の値を指定できる。

(プラグイン / モジュール : winmm.dll)

解説

midiOutOpen 関数は再生用に MIDI 出力デバイスをオープンする。

[戻り値]
成功時は MMSYSERR_NOERROR を、それ以外の場合はエラーを返す。考えられるエラー値は次のとおり。
(以下省略)

[備考]
システムに存在する MIDI 出力デバイスの数を判定するには midiOutGetNumDevs 関数を使用する。wDeviceID
で指定されるデバイス識別子は 0 から存在するデバイスの数より 1 少ない値までの範囲となる。MIDI_MAPPER
もデバイス識別子として使用できる。コールバック情報の受け取り先としてウィンドウまたはスレッドが選択された場合、MIDI
出力の進捗を示すために次のメッセージがウィンドウプロシージャまたはスレッドへ送信される:
MM_MOM_OPEN、MM_MOM_CLOSE、MM_MOM_DONE。コールバック情報の受け取り先として関数が選択された場合、MIDI
出力の進捗を示すために次のメッセージが関数へ送信される: MOM_OPEN、MOM_CLOSE、MOM_DONE。

情報

プラグイン / モジュールwinmm.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の winmm.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_winmm_gen2.hs