【发布时间】:2012-03-22 01:44:29
【问题描述】:
我正在尝试将我的 C# 控制台应用程序中的 PC 扬声器静音。我已经尝试了建议的代码on this site,它不会影响我机器上的音量。我需要代码才能在 Win7 上工作,我假设代码只能在 XP 上工作。我也试过这个:
[DllImport("winmm.dll", SetLastError = true, CallingConvention = CallingConvention.Winapi)]
public static extern int waveOutSetVolume(IntPtr uDeviceID, int dwVolume);
waveOutSetVolume(IntPtr.Zero, 0);
但是当调用waveOutSetVolume方法时,系统并没有静音,也没有报错。有没有办法在 Win7 中将 PC 从 C# 静音?
【问题讨论】:
-
您希望它仅用于您的应用程序还是整个系统静音?
-
Windows API 调用不会引发异常。尝试检查 Marshal.GetLastWin32Error();
-
@JohnRiselvato - 整个系统。
标签: c# audio windows-7 pinvoke volume