C#调用Microsoft.DirectX.DirectSound问题记录及解决

问题1:初始化结构体WaveFormat或其余变量时卡死

 

修改App.config,修改方法以下:
原App.config调试

<?xml version="1.0" encoding="utf-8" ?> 
<configuration>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
  </startup>
</configuration>

 修改后的App.configorm

<?xml version="1.0" encoding="utf-8"?> 
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/> </startup>
</configuration>

 问题2:其余信息: DLL“Microsoft.DirectX.DirectSound.dll”正尝试在 OS 加载程序锁内执行托管代码。xml

把Visual Studio菜单的 调试->异常->Managed Debuggin Assistants->LoaderLock 的选中状态去掉(我没有找到异常菜单,可是使用快捷键Ctrl+Alt+E打开了异常对话框)。我认为这种作法不是解决办法,只是把异常给关掉了,可是暂时没有发现别的方法。

blog

问题3:System.TypeInitializationException

该错误是由于系统没有检测到麦克风引发,因此解决方法是
- 在程序中增长异常处理机制,捕捉异常,及时处理并作相应提示。
- 插入麦克风,或者启用虚拟麦克风utf-8

相关文章
相关标签/搜索