检查系统是否有声音C#

Sir*_*ang 6 c# audio xna

我们目前正在开发一款使用XNA的游戏,我们偶然发现了一个小问题.

当系统没有插入声音设备时(扬声器等 - 当Win7在扬声器图标上显示红叉时),当尝试播放/加载声音时它会崩溃.

因此,我们想检查系统是否具有输出声音的能力.在C#中有可能吗?

And*_*ell 6

你确定它实际上是崩溃了,而不仅仅是抛出一个未处理的异常吗?

理论上它应该抛出一个NoAudioHardwareException.

尝试用音频做一些事情(SoundEffect.MasterVolume作为一种可能性,因为它是一个静态方法),并看看你是否可以捕获异常.如果您确实发现异常,则不要再进行其他音频工作.