VC++/MFC環境にて、MIDI音をMCIによって再生するアプリケーションを
開発しています。
MIDI(シーケンサ)をMCIデバイスとしてオープンして文字列を送り
音を鳴らす、というような事は出きています。、
ただ、そのアプリケーションが動いているシステムのMIDI設定を
アプリケーションから設定する必要があるのですが、
設定(コントロールパネルの「サウンドとマルチメディアのプロパティ」の
「オーディオ」タブの「MIDI音楽の再生」のグループのような設定ダイアログ)を
自アプリ上に作りたいのですが、かなり検索しても書籍も手の届く範囲でかなり
当たったのですが、ヒントも得られず困ってしまいました。
DirectX(Music)を使う方法であれば、CodeProjectや解説本に
かなり似たような設定のサンプルや関数の解説を見つけているのですが、
DirectXよりMCIのみの方が安心なのではないかと思うので
DirectXは使用しない方向で進めています。
接続(インストールされている)MIDIデバイスの列挙選択設定などを
VC++/MFC環境でDirectX無しで行うにはどのような方法がありますでしょぅか?
何分、MIDIに関する知識が付け焼き歯で
ヒントだけでもいただけませんでしょうか
> 接続(インストールされている)MIDIデバイスの列挙選択設定などを
> VC++/MFC環境でDirectX無しで行うにはどのような方法がありますでしょぅか?
MCIは使わないですが,midiOutGetNumDevsとmidiOutGetDevCapsで列挙することができます。
http://msdn.microsoft.com/library/en-us/multimed/htm/_win32_midioutgetnumdevs.asp
http://msdn.microsoft.com/library/en-us/multimed/htm/_win32_midioutgetdevcaps.asp
詳しくは
http://msdn.microsoft.com/library/en-us/multimed/htm/_win32_querying_midi_output_devices.asp
かな。
早速のお返事ありがとうございます
そうです!そのAPIでやりたい事がほぼ出来るんです。
正直質問した時には、簡単には出来ないんじゃないかと思いこんでいたので
ズバリの簡単なAPIがありお恥ずかしい(検索能力不足?)です
ヘルプも検索はしてたんですけど、検索ワードがダメだと(あと知識不足)
意外とダメな物ですね
本当にどうもありがとうございます。助かりました!
ツイート | ![]() |