如何以编程方式更改系统卷 [英] How to change the System Volume programmatically
本文介绍了如何以编程方式更改系统卷的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想更改系统的音量。我使用以下代码:
使用系统;
使用 System.Collections.Generic;
使用 System.Linq;
使用 System.Text;
使用 System.Windows.Forms;
使用 System.Runtime.InteropServices;
命名空间 shaped_form
{
class VolumeChange
{
private const int APPCOMMAND_VOLUME_MUTE = 0x80000;
private const int APPCOMMAND_VOLUME_UP = 0xA0000;
private const int APPCOMMAND_VOLUME_DOWN = 0x90000;
private const int WM_APPCOMMAND = 0x319;
[DllImport( user32.dll)]
public static extern IntPtr SendMessageW( IntPtr hWnd, int 消息, IntPtr wParam, IntPtr lParam);
private void btnMute_Click( object sender,EventArgs e)
{
SendMessageW( this .Handle ,WM_APPCOMMAND, this .Handle ,( IntPtr )APPCOMMAND_VOLUME_MUTE);
}
private void btnDecVol_Click( object sender,EventArgs e)
{
SendMessageW( this .Handle ,WM_APPCOMMAND,< b> this .Handle ,( IntPtr )APPCOMMAND_VOLUME_DOWN);
}
私有 void btnIncVol_Click( object sender,EventArgs e)
{
SendMessageW( this .Handle ,WM_APPCOMMAND,< b> this .Handle ,( IntPtr )APPCOMMAND_VOLUME_UP);
}
}
}
但是我在突出显示的位置出现错误,因为shaped_form.VolumeChange不包含定义处理。我从一些互联网资源获得此代码。
并且还请告诉我关于 Intptr 的信息,这里很重要。
解决方案
去看看这个链接
http ://msdn.microsoft.com/en-us/library/aa719104.aspx
I want to change the System's Volume. I am using following code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace shaped_form
{
class VolumeChange
{
private const int APPCOMMAND_VOLUME_MUTE = 0x80000;
private const int APPCOMMAND_VOLUME_UP = 0xA0000;
private const int APPCOMMAND_VOLUME_DOWN = 0x90000;
private const int WM_APPCOMMAND = 0x319;
[DllImport("user32.dll")]
public static extern IntPtr SendMessageW(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam);
private void btnMute_Click(object sender, EventArgs e)
{
SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,(IntPtr)APPCOMMAND_VOLUME_MUTE);
}
private void btnDecVol_Click(object sender, EventArgs e)
{
SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,(IntPtr)APPCOMMAND_VOLUME_DOWN);
}
private void btnIncVol_Click(object sender, EventArgs e)
{
SendMessageW(this.Handle, WM_APPCOMMAND,this.Handle,(IntPtr)APPCOMMAND_VOLUME_UP);
}
}
}
But I got an error at the highlighted places as "shaped_form.VolumeChange does not contain a definition for Handle". I got this code from some internet sources.
and also please tell me about Intptr and it's importance here.
解决方案
go and see this link
http://msdn.microsoft.com/en-us/library/aa719104.aspx
这篇关于如何以编程方式更改系统卷的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文