vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Multimedia & Sound · Sonstiges   |   VB-Versionen: VB4, VB5, VB630.06.04
PC-Speaker de- und aktivieren

Aktivieren und deaktivieren des PC-Speakers über Registry-Keys

Autor:   Markus GerhardBewertung:  Views:  14.667 
ohne HomepageSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Über einen Eintrag in der Registry wird der PC-Lautsprecher aktiviert bzw. deaktiviert. Dies sollte unter allen Win-Betriebsystemen ab 98/NT4 laufen. Wirksam wird das Ganze nach einem Neustart, der manuell durchgeführt werden muss. Die Funktionen zum Lesen und Schreiben der Registry stammen hier nachfolgendem Tipp: Registry lesen und schreiben ohne API

Benötigte Verweise/Komponenten:
Es werden keine zusätzlichen Verweise oder Komponenten benötigt.

Benötigte Controls für das Beispielprojekt:

  • 2 x Optionsbutton (optEnable und optDisable)
  • 1 x CommandButton (cmdApply)

    Quellcode:

    Option Explicit
     
    ' Registry-Zweig, in der die Einstellung gespeichert ist
    Const cPATH As String = "HKEY_CURRENT_USER\Control Panel\Sound\ExtendedSounds"
    Private Sub Form_Load()
      ' aktuelle Einstellung lesen...
      If RegRead(cPATH) = "yes" Then
        ' ... und Vorgabe setzen
        optDisable.Value = True
      Else
        optEnable.Value = True
      End If
    End Sub
    Private Sub cmdApply_Click()
      ' Einstellungf übernehmen
      Dim sValue As String
      Dim sText As String
     
      If optEnable.Value Then
        sValue = "yes"
        sText = "aktiviert"
      Else
        sValue = "no"
        sText = "deaktiviert"
      End If
     
      If RegWrite(cPATH, sValue) Then
        MsgBox "Der PC-Speaker wurde erfolgreich " & sText, vbOKOnly, "Status"
      Else
        MsgBox "Der PC-Speaker konnte nicht " & sText & " werden.", vbOKOnly, "Fehler"
      End If
    End Sub

    Und hier noch die beiden Registry-Funktionen aus o.g. Tipp:

    ' Gibt den Wert des Schlüssels aus "Path" zurück
    Public Function RegRead(Path As String) As String
      Dim ws As Object
     
      On Error GoTo ErrHandler
      Set ws = CreateObject("WScript.Shell")
      RegRead = ws.RegRead(Path)
      Exit Function
     
    ErrHandler:
      RegRead = ""
    End Function
    ' Schreibt den Wert aus "Value" als den Typ aus "Typ"
    ' in den in "Path" angegebenen Schlüssel
    Public Function RegWrite(ByVal Path As String, _
      ByVal Value As String, _
      Optional ByVal Typ As String = "REG_SZ") As Boolean
     
      Dim ws As Object
     
      On Error GoTo ErrHandler
      Set ws = CreateObject("WScript.Shell")
      ws.RegWrite Path, Value, Typ
      RegWrite = True
      Exit Function
     
    ErrHandler:
      RegWrite = False
    End Function



  • Anzeige

    Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
    (einschl. Beispielprojekt!)

    Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
    - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
    - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
    Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
     
     
    Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


    Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.