Try-Catch 语句在遇到异常时"abort"不起作用



这段代码已经运行了很长时间,但现在突然开始做这种疯狂的事情,有时,即使我的代码在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"的首次机会异常

附加信息:在采样率为44100的MP3中,获得了采样率为48000的帧。Mp3FileReader不支持更改采样率。

为什么代码不跳到";捕获";部分,但却崩溃了?

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

  • 转到工具/选项/调试并关闭"仅启用我的代码(仅限托管)"。或选项
  • 转到Debugger/Exceptions并为公共语言运行时异常关闭"用户未处理">

最新更新