两个方法.
方法一:
1. 导入API定义
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, uint wParam, uint lParam);
const uint WM_APPCOMMAND = 0x319;
const uint APPCOMMAND_VOLUME_UP = 0x0a;
const uint APPCOMMAND_VOLUME_DOWN = 0x09;
const uint APPCOMMAND_VOLUME_MUTE = 0x08;
2.提高音量
SendMessage(this.Handle, WM_APPCOMMAND, 0x30292, APPCOMMAND_VOLUME_UP * 0x10000);
3.减小音量
SendMessage(this.Handle, WM_APPCOMMAND, 0x30292, APPCOMMAND_VOLUME_DOWN * 0x10000);
4.静音/取消静音
SendMessage(this.Handle, WM_APPCOMMAND, 0x200eb0, APPCOMMAND_VOLUME_MUTE * 0x10000);
方法二:
调用"winmm.dll"中的waveOutSetVolume方法.
MMRESULT waveOutSetVolume(
HWAVEOUT hwo,
DWORD dwVolume
);
C# code略, msdn地址:http://msdn.microsoft.com/en-us/library/ms713762(VS.85).aspx
本文介绍了通过调用API和waveOutSetVolume方法实现音量调整的技术细节。第一种方法利用了 SendMessage 函数来发送WM_APPCOMMAND消息实现音量增减及静音操作;第二种方法则是通过使用 winmm.dll 中的 waveOutSetVolume 函数直接设置音量。
1151

被折叠的 条评论
为什么被折叠?



