midiOutCacheDrumPatches 関数は内部 MIDI シンセサイザデバイスに対して、指定された一連のキーベース打楽器パッチをプリロードしてキャッシュするよう要求する。
midiOutCacheDrumPatches hmo, uPatch, pwkya, fuCache
hmo : [intptr] オープン済み MIDI 出力デバイスへのハンドル。このデバイスは内部 MIDI シンセサイザでなければならない。このパラメータには HMIDIOUT にキャストされた MIDI ストリームのハンドルも指定できる。 uPatch : [int] 使用するドラムパッチ番号。既定のドラムパッチをキャッシュするには 0 を指定する。 pwkya : [var] キャッシュまたはアンキャッシュする打楽器パッチのキー番号を示す KEYARRAY 配列へのポインタ。 fuCache : [int] キャッシュ操作のオプション。次のフラグのいずれかを指定できる。
(プラグイン / モジュール : winmm.dll)
midiOutCacheDrumPatches 関数は内部 MIDI シンセサイザデバイスに対して、指定された一連のキーベース打楽器パッチをプリロードしてキャッシュするよう要求する。 [戻り値] 成功時は MMSYSERR_NOERROR を、それ以外の場合はエラーを返す。考えられるエラー値は次のとおり。 (以下省略) [備考] シンセサイザの中には全ての打楽器パッチを同時にロードしておけないものがある。パッチをキャッシュすることで指定されたパッチが利用可能であることを保証する。KEYARRAY 配列の各要素は 128 のキーベース打楽器パッチのいずれかを表し、その特定のパッチを使用する 16 の MIDI チャネルそれぞれに対しビットがセットされる。最下位ビットは物理チャネル 0 を、最上位ビットは物理チャネル 15 を表す。例えばキー番号 60 のパッチが物理チャネル 9 と 15 で使用される場合、要素 60 は 0x8200 にセットされる。本関数は内部 MIDI シンセサイザデバイスにのみ適用される。全ての内部シンセサイザがパッチキャッシュをサポートしているわけではない。デバイスがパッチキャッシュをサポートしているかを判定するには、MIDICAPS_CACHE フラグを用いて midiOutGetDevCaps 関数で取得した MIDIOUTCAPS 構造体の dwSupport メンバをテストする。
| プラグイン / モジュール | winmm.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の winmm.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_winmm_gen2.hs |