到达异常时,Try-Catch语句不会“中止”

时间:2014-02-25 18:33:28

标签: c# exception naudio

这段代码已经很好地工作了很长时间,但是现在突然开始做这个疯狂的事情,有时,代码失败并且崩溃程序,即使我的代码在try-catch语句中。这是失败的代码:

try
{
audioFileReader = new AudioFileReader(file); // here's where Im getting the exception
waveOut = new WaveOutEvent();
FadeInOut = new FadeInOutSampleProvider(audioFileReader);
waveOut.Init(new SampleToWaveProvider(FadeInOut));
PlaySource = Filetype.MP3;
}
catch (Exception e)
{
OnError.Invoke(e);
PostError(e);
}

这是我得到的例外:

  

NAudio.dll

中出现'System.InvalidOperationException'类型的第一次机会异常      

附加信息:采样率为48000,采样率为44100的MP3格式.Mp3FileReader不支持采样率变化。

为什么代码不会跳到“catch”部分而是崩溃?

1 个答案:

答案 0 :(得分:2)

@Tokfrans - 因为这不是你的代码抛出异常。

  • 转到工具/选项/调试,然后关闭“仅启用我的代码(仅管理)”。或选项。
  • 转到Debugger / Exceptions并关闭“User-unhandled”以获取公共语言运行时异常。