从开始写冰球记分系统就在烦恼这个问题,以前重来没用过 好不容易从网上找到了一个解决方案 第一个解决方案: using System.Runtime.InteropServices;//命名空间引用 声明以下的方法: [DllImport("winmm.dll")] public static extern long waveOutSetVolume(long deviceID, long Volume); 调用方法 waveOutSetVolume(0, 0x0000); 第一个参数可以为0,表示首选设备 第二个参数为音量:0xFFFF为最大,0x0000为最小,其中高位(前两位)表示右声道音量,低位(后两位)表示左声道音量 后来才发现这个不是控制的全部声音,只是控制了声音中的波形,而且有一个不好,只能把波形调成没有,但是我没办法恢复它。。。。 只好继续找,皇天不负有心人,终于让我找着了 第二个解决方法: 下面是一个英文网址,如果英文好的可以仔细的研究一下,里面有好多控制声音的方法。。 可惜我英文不好,都看不懂 不过只要知道怎么用也行 声音控制类 到这个网址下载页中文章最后那个附件.生成dll文件 关于生成dll文件,当你生成解决方案时VS是可以自动成生dll文件的,在bin/Debug里面 如果没有生成dll文件的话,请在工程上右键属性输出动态链接库(也有可能是别的属性反正就是在属性里设置一下,可以自己试试看) 生成dll文件后,把生成的PC_VolumeControl.dll文件加到你的项目中,并对它添加引用 静音: PC_VolumeControl.VolumeControl.SetVolume(0); 恢复静音: PC_VolumeControl.VolumeControl.SetVolume(100000); 记得把项目打包着安装的时候别忘了把这个dll文件也加进去
C#控制静音
最新推荐文章于 2017-11-16 22:35:00 发布