`
zu14
  • 浏览: 444797 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类

C#、VB.NET使用Windows API控制系统音量及静音

    博客分类:
  • C#
阅读更多

 

今天,有个朋友问到:如何用.NET控制系统的音量和静音?

查了下资料,找到了这个使用API的方法,使用起来很简单,但有些参数的具体值,为什么这么取,我也没搞清楚,实用主义,先用着,呵呵

 

实现的代码如下:

一、引入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;

 

二、 提高音量

 

SendMessage(this
.Handle, WM_APPCOMMAND, 0x30292, APPCOMMAND_VOLUME_UP * 0x10000);

 

三、 降低音量

SendMessage(this
.Handle, WM_APPCOMMAND, 0x30292, APPCOMMAND_VOLUME_DOWN * 0x10000);

 

四、 静音与恢复(执行2次恢复原状态)

SendMessage(this
.Handle, WM_APPCOMMAND, 0x200eb0, APPCOMMAND_VOLUME_MUTE * 0x10000);
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics