著者の中本です。
デバッグによる原因究明ありがとうございました。周波数設定の際に失敗しているという現象まで解明して頂きありがとうございます。
SoudDLLはサウンドカードとC#を橋渡しするためのライブラリです。本来C#は簡単に開発できる反面ハードウェアに直接アクセスするコードは基本的に書けません。そこでサウンドカードを直接制御するためにSoundDLLを作成しました。しかしサウンドカードのサンプリング周波数を設定する為のSoundCard.WaveFormatSetup(16000);ではメモリに値をセットするだけでAPIを呼び出していないのですぐに戻るはずなのですがここで戻ってこないというのは大変不思議です。ハングするのであれば実際にAPIを呼び出しているSoundCard.SetupInBuffer()であれば納得できるのですが・・・参考までにSoundDLLのソースコードを添付しておきますのでどうかご覧下さい(残念ながらコメントは殆ど付加されていませんのでご容赦を)。SoundDLLに対する最初の呼び出しのタイミングでSoundDll.dllを読み込むのですが、もしかするとSoundDLL.dllの読み込みに失敗している可能性があります。アンチウィルスなどのセキュリティ設定が原因かもしれません。はずしていたらごめんなさい。
ご提案の通りUSBでSdrStudyフォルダを持ち歩いて頂き他のPC上での実行を試して頂けるのは大変助かります。できればマイクが標準で接続されているノートPC上で試して頂けるとありがたいです。どうかよろしくお願いします。