Настройка системной громкости в VB.NET: подробное руководство с примерами кода

В этой статье блога мы рассмотрим различные методы проверки и изменения системного тома с помощью VB.NET. Мы предоставим примеры кода, чтобы продемонстрировать каждый метод и проведем вас через весь процесс. К концу этой статьи вы получите четкое представление о том, как управлять системным томом в приложениях VB.NET.

Метод 1: использование Windows API
Один из способов управления системным томом в VB.NET — использование Windows API. Вот пример того, как вы можете получить и установить громкость системы с помощью функций API:

Imports System.Runtime.InteropServices
Public Class VolumeController
    Private Const APPCOMMAND_VOLUME_UP As Integer = &HA
    Private Const APPCOMMAND_VOLUME_DOWN As Integer = &H9
    Private Const APPCOMMAND_VOLUME_MUTE As Integer = &H8
    Private Const WM_APPCOMMAND As Integer = &H319
    <DllImport("user32.dll")>
    Public Shared Function SendMessageW(ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    End Function
    Public Shared Sub IncreaseVolume()
        SendMessageW(New IntPtr(&HFFFF), WM_APPCOMMAND, New IntPtr(&H30292), New IntPtr(APPCOMMAND_VOLUME_UP * &H10000))
    End Sub
    Public Shared Sub DecreaseVolume()
        SendMessageW(New IntPtr(&HFFFF), WM_APPCOMMAND, New IntPtr(&H30292), New IntPtr(APPCOMMAND_VOLUME_DOWN * &H10000))
    End Sub
    Public Shared Sub MuteVolume()
        SendMessageW(New IntPtr(&HFFFF), WM_APPCOMMAND, New IntPtr(&H200EB0), New IntPtr(APPCOMMAND_VOLUME_MUTE * &H10000))
    End Sub
End Class

Метод 2: использование класса My.Computer.Audio
VB.NET предоставляет класс My.Computer.Audio, который предлагает удобные методы управления функциями, связанными со звуком, включая громкость системы. Вот пример того, как настроить громкость системы с помощью этого класса:

Imports Microsoft.VisualBasic
Public Class VolumeController
    Public Shared Sub IncreaseVolume()
        My.Computer.Audio.Volume += 10
    End Sub
    Public Shared Sub DecreaseVolume()
        My.Computer.Audio.Volume -= 10
    End Sub
    Public Shared Sub MuteVolume()
        My.Computer.Audio.Volume = 0
    End Sub
End Class

Метод 3: использование библиотеки NAudio
NAudio — это популярная аудиобиблиотека для.NET, которая обеспечивает расширенные возможности воспроизведения и обработки звука. Это также позволяет вам контролировать громкость системы. Вот пример регулировки громкости системы с помощью NAudio:

Imports NAudio.CoreAudioApi
Public Class VolumeController
    Public Shared Sub IncreaseVolume()
        Dim deviceEnumerator As New MMDeviceEnumerator()
        Dim device As MMDevice = deviceEnumerator.GetDefaultAudioEndpoint(DataFlow.Render, Role.Multimedia)
        device.AudioEndpointVolume.VolumeStepUp()
    End Sub
    Public Shared Sub DecreaseVolume()
        Dim deviceEnumerator As New MMDeviceEnumerator()
        Dim device As MMDevice = deviceEnumerator.GetDefaultAudioEndpoint(DataFlow.Render, Role.Multimedia)
        device.AudioEndpointVolume.VolumeStepDown()
    End Sub
    Public Shared Sub MuteVolume()
        Dim deviceEnumerator As New MMDeviceEnumerator()
        Dim device As MMDevice = deviceEnumerator.GetDefaultAudioEndpoint(DataFlow.Render, Role.Multimedia)
        device.AudioEndpointVolume.Mute = True
    End Sub
End Class

В этой статье мы рассмотрели различные методы проверки и изменения системного тома в VB.NET. Мы рассмотрели использование Windows API, класса My.Computer.Audio и библиотеки NAudio. Каждый метод имеет свои преимущества, поэтому вы можете выбрать тот, который лучше всего соответствует вашим потребностям. Используя эти примеры кода, вы можете легко интегрировать системный регулятор громкости в свои приложения VB.NET.