C# 检测机器是否有声卡设备
有时候我们的程序需要进行音频的播放,则我们首先需要判断机器是否有声卡能够进行音频的播放。在网上找了一下没有发现太多关于如何检机器是否有声卡的例子。我在看了一些文档后自己写了一个小测试程序,如果机器装有.Net FrameWork 则可以使用如下代码:
class Program { static void Main(string[] args) { //测试机器声卡数量 try { if (waveOutGetNumDevs() > 0 && midiOutGetNumDevs() > 0) { Console.WriteLine("声卡设备已经安装"); } else { Console.WriteLine("未安装声卡设备"); } } catch (Exception ex) { Console.WriteLine("声卡检测失败,失败信息: "+ex.Message ); } } [DllImport("Winmm.dll", CharSet = CharSet.Auto)] public static extern int waveOutGetNumDevs(); [DllImport("Winmm.dll", CharSet = CharSet.Auto)] public static extern int midiOutGetNumDevs(); }
当然这段代码首先是需要Winmm.dll是正常的才行,关于Winmm.dll的更多了解,可以查看百度里面关于Winmm.dll的介绍。
我只是一个菜鸟,如果您有更好的方式方法,欢迎交流!O(∩_∩)O~