SSブログ

COM経由で初期化するDirectSoundでのDirectSoundEnumerate [日記]

AyameでDirectSoundEnumerateを使いたいと思ったんですが、CoCreateInstanceを使った初期化のため、DirectSoundEnumerateが使えない模様。
LoadLibraryを使えだとさ。
うーん、そこまで改修するのは今さらめんどくさいなぁ。
http://msdn.microsoft.com/ja-jp/library/cc351144.aspx

DirectSound がインストールされているかどうかを検出する方法は?

DirectSoundEnumerate() を使って利用可能な DirectSound デバイスを列挙する必要がない場合には、アプリケーションに dsound.lib をリンクせず、代わりに COM の CoCreateInstance(CLSID_DirectSound. . . ) を使った後に、Initialize(NULL) を使って DirectSound オブジェクトを初期化します。

DirectSoundEnumerate() を使う必要がある場合には、LoadLibrary("dsound.dll") を使って dsound.dll を動的にロードし、GetProcAddress("DirectSoundEnumerateA/W") や GetProcAddress ("DirectSoundCreateA/W") などを使えば、そのメソッドにアクセスできます。


2012-09-04 16:58  nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証: 下の画像に表示されている文字を入力してください。

 

このブログの更新情報が届きます

すでにブログをお持ちの方は[こちら]


この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。