C#,Winform 声音、音量控制操作

需求:有一个TextBox密码框,系统上安装读屏软件,当用户输入密码时,避免周围人听到,用户需要装密码框中的声音屏蔽,即TextBox输入的内容不进行读屏,用户需要只有自己知道。为了实现这一功能,

在网上找了好久,多数是调用系统的api,[DllImport(“user32.dll”)]或者是[DllImport(“Winmm.dll”)],使用

SendMessageW(this.Handle, WM_APPCOMMAND,this.Handle, (IntPtr)APPCOMMAND_VOLUME_DOWN)或者是

private static extern int waveOutSetVolume(int hwo, System.UInt32 pdwVolume))

都不是自己想达到的效果,,最后参考

%23/#/

最后有一个dll程序提供下载,使用工具是VS005,将此程序生成dll,导入到自己的程序中,添加命名空间,

using VolumeControl.Library.Constants;

using VolumeControl.Library.Structs;

程序中调用代码如下:

static int volumeValue = PC_VolumeControl.VolumeControl.GetVolume();

private void btnShow_Click(object sender, EventArgs e)

{

this.label2.Text = PC_VolumeControl.VolumeControl.GetVolume().ToString();//显示当前系统音量

volumeValue = PC_VolumeControl.VolumeControl.GetVolume();

}

private void txtMessage_KeyDown(object sender, KeyEventArgs e)

{

PC_VolumeControl.VolumeControl.SetVolume(0);//设置音量大小为0(最低音)

this.label2.Text = PC_VolumeControl.VolumeControl.GetVolume().ToString();

}

private void txtMessage_Leave(object sender, EventArgs e)

{

PC_VolumeControl.VolumeControl.SetVolume(volumeValue);//恢复系统音量

label2.Text = PC_VolumeControl.VolumeControl.GetVolume().ToString();

}

劝君更尽一杯酒,西出阳关无故人。

C#,Winform 声音、音量控制操作

相关文章:

你感兴趣的文章:

标签云: