Как отключить/включить звуки в моем приложении, не касаясь регулятора громкости моего компьютера, когда код я использую:Отключение/включение звука Применение Звуки
My.Computer.Audio.Play(My.Resources.audio_here, AudioPlayMode.Background)
Как отключить/включить звуки в моем приложении, не касаясь регулятора громкости моего компьютера, когда код я использую:Отключение/включение звука Применение Звуки
My.Computer.Audio.Play(My.Resources.audio_here, AudioPlayMode.Background)
Посмотрите на waveOutSetVolume
и waveOutGetVolume
функции winmm.dll
Private Declare Function waveOutSetVolume Lib "winmm.dll" (ByVal uDeviceID As Integer, ByVal dwVolume As Integer) As Integer
Private Declare Function waveOutGetVolume Lib "winmm.dll" (ByVal uDeviceID As Integer, ByRef lpdwVolume As Integer) As Integer
В зависимости от версии ОС ваших целевых компьютеров вам может потребоваться изучить новые API-интерфейсы MMDevice
и EndpointVolume
.
Наконец я провожу 10+ часов, пробуя различные варианты и перевод C++ и C# коды в VB.NET и, наконец, этот один, кажется, работает, по крайней мере для меня. Попробуйте это ваша собственная личность
Imports System.Runtime.InteropServices
Imports Microsoft.Win32
Public Class Form1
<DllImport("winmm.dll")>
Public Shared Function waveOutSetVolume(ByVal h As IntPtr, ByVal dwVolume As UInteger) As Integer
End Function
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.Show()
Dim keyValue As String 'disable web click sound
keyValue = "%SystemRoot%\Media\"
If Environment.OSVersion.Version.Major = 5 AndAlso Environment.OSVersion.Version.Minor > 0 Then
keyValue += "Windows XP Start.wav"
ElseIf Environment.OSVersion.Version.Major = 6 Then
keyValue += "Windows Navigation Start.wav"
Else
Return
End If
Dim key As RegistryKey = Registry.CurrentUser.OpenSubKey("AppEvents\Schemes\Apps\Explorer\Navigating\.Current", True)
key.SetValue(Nothing, "", RegistryValueKind.ExpandString)
Me.WebBrowser1.Navigate("https://www.youtube.com/some_video")
waveOutSetVolume(IntPtr.Zero, 0)
End Sub
End Class
Как получить uDeviceID? –
Нам всегда удавалось указать 0 для uDeviceID. – LeftyCoder