以编程方式在Windows中切换音频驱动程序?
问题描述:
我一直在为一个特定的音频设备的程序工作。该设备附带自己的官方驱动程序,但它也支持Windows提供的通用USB音频驱动程序。我发现我的程序只适用于通用驱动程序。以编程方式在Windows中切换音频驱动程序?
而不是要求用户切换其音频驱动程序,有没有什么办法可以在运行时以编程方式切换到通用音频驱动程序,然后在程序关闭时切换回来?
答
所以我最终做的是使用DevCon,这是Windows Driver Kit附带的命令行实用程序,可以替代设备管理器的功能。然后,我使用ShellExecute函数在我想要加载第一个驱动程序时使用DevCon Update命令启动批处理文件,并使用完全相同的方法使用第二个批处理文件重新安装原始驱动程序。
我敢肯定,你也可以利用本地Windows功能来实现这一点(DevCon源代码可用),但这种方法对我来说更容易。