我正在为游戏加载一些音效。在许多计算机上进行以下调用:
SoundEffect effect = ContentPersistentAudio.Load<SoundEffect>(location);
没有问题。但是,在一台特定的计算机上,它会崩溃抛出InvalidOperationException
异常。怎么可能出错?它崩溃的计算机具有正常的车载声音和正确安装的驱动程序(这甚至是必要的)。内容管理器似乎已正确初始化,位置也正确(在其他地方正常工作)。
示例音频文件位于:http://www.hybridbeasts.com/test.wav
有趣的是,try / catch失败并仍然会导致应用程序崩溃。
try
{
effect = Content.Load<SoundEffect>(location);
}
catch
{
Warning.Happened("Problem with audio playback detected. Sound automatically disabled");
DebugEngine.disableSound = true;
return;
}