windows - 调整 Windows 扬声器音量 VB.NET

标签 windows vb.net volume

如何通过 VB.NET 更改 Windows 扬声器音量(主输出音量控制音量值)?我想要一种方法来间接更改整个系统的音量,就像我们在 Windows 7 上的音量控制应用程序中所做的那样

最佳答案

来自:

http://social.msdn.microsoft.com/Forums/vstudio/en-US/8308f020-b9e6-472c-aaac-93619a8a5a7d/vbnet-control-the-system-volume-mute-and-output-the-current-level-to-the-user?forum=vbgeneral

Imports System.Runtime.InteropServices
Public Class Form1
    <DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    End Function

    Const WM_APPCOMMAND As UInteger = &H319
    Const APPCOMMAND_VOLUME_UP As UInteger = &HA
    Const APPCOMMAND_VOLUME_DOWN As UInteger = &H9
    Const APPCOMMAND_VOLUME_MUTE As UInteger = &H8

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        SendMessage(Me.Handle, WM_APPCOMMAND, &H30292, APPCOMMAND_VOLUME_UP * &H10000)
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        SendMessage(Me.Handle, WM_APPCOMMAND, &H30292, APPCOMMAND_VOLUME_DOWN * &H10000)
    End Sub
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        SendMessage(Me.Handle, WM_APPCOMMAND, &H200EB0, APPCOMMAND_VOLUME_MUTE * &H10000)
    End Sub
End Class

我能够在一分钟内将它们组合在一起,没问题。

关于windows - 调整 Windows 扬声器音量 VB.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6097666/

相关文章:

c++ - 我如何找到 Win32 中的资源泄漏?

python - 如何替换Windows中的posix闹钟

vb.net - 恢复 PostgreSQL 数据库需要很长时间

jquery - 如何从自动完成jquery函数中获取所需的值?

python - 如何更改 PyGame 中声音或音乐的音量?

javascript - Js 音频音量 slider

windows - WOW64 问题(.lnk 快捷方式)

c++ - Win32 : Passing lParam to CreateWindow and keeping track of open windows

c# - Image 和 Bitmap 类都没有实现自定义相等/哈希码逻辑的原因是什么?

C++ - 标准化 wav 文件的音量级别