CaptureSound Managed その1
1.LoaderLockする。
「LoaderLock が検出されました。
Message: DLL 'C:\WINDOWS\assembly\GAC\Microsoft.DirectX\1.0.2902.0__31bf3856ad364e35\Microsoft.DirectX.dll' は、OS ローダー ロック内でマネージ実行を試行しています。DllMain またはイメージ初期化関数内でマネージ コードを実行しないでください。この動作は、アプリケーションをハングさせる原因になる可能性があります。」
こんな例外が、出ます。
初期化関数内で、マネージコードを実行するな、との事です。
調べてみましたが、この例外は、使用者側の、問題ではない、そうです。
ですので、MDAを停止させなければなりません。
「レジストリーに、'MDA'='0'を、書き込めばよい」、との事でしたが、うまくいきませんでした。
私の使っている、C# .NETFrameworkは
ですが、
うまい、解決方法を、めっけました。
メニューからDebugを選ぶと、そこに、「例外」という項目が、あります。
ここで、「ManagedDebbugging Assistants」の中に、
LoaderLock例外を、検出する、しないの項目が、あります。
ここの、チェックを外して、OKボタンを押すのです。
これで、LoaderLockの例外がスローされなくなります、目出度し、目出度し。
2.CaptureSound Managedを、理解できるように、努める
DireckX SDKのSample 「CaptureSound Managed」のプログラムを
順番を追って、理解して行きたいと、思います。
このSample自体、for beginnerなのですが、プログラムが完成された状態なので、複雑で、理解に時間がかかります。
これは、大変参考になるプログラムで、大切なので、
ここは、じっくり、解析して行きましょう。
(因みに、実行すると、どのwavファイル?と、聞いてきますが、これは、録音するためのファイルを指します。
演奏するためのファイルを指定するのでは、ありません。
私は、サウンドカードに、micを突っ込んで、mic入力を、wavファイルに保存しました。)
次回から、じっくり、調べて行きましょう、お楽しみに。
H.18.6.16