Beschreibung: Deklaration: Declare Function auxGetVolume Lib "winmm.dll" ( _ ByVal uDeviceID As Long, _ lpdwVolume As Long) As Long Parameter:
Rückgabewert: Const MMSYSERRR_NOERROR = 0 ' Kein Fehler Const MMSYSERR_BASE = 0 ' Basis Konstante Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE+ 2) ' Falscher Geräte ID Beispiel: Private Declare Function auxGetVolume Lib "winmm.dll" ( _ ByVal uDeviceID As Long, _ lpdwVolume As Long) As Long ' für das zweite Beispiel "CopyMemory" Private Declare Sub CopyMemory Lib "kernel32" _ Alias "RtlMoveMemory" ( _ Destination As Any, _ Source As Any, _ ByVal Length As Long) Const MMSYSERRR_NOERROR = 0 ' Kein Fehler Const MMSYSERR_BASE = 0 ' Basis Konstante Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE+ 2) ' Falscher Geräte ID ' Beispiel 1: Die Berechnung der Lautstärke des ersten Audiogerätes (Index 0) Private Sub Command1_Click () Dim Retval As Long, AuxReturn As Long Dim RightVol As Long, LeftVol As Long Retval = auxGetVolume(CLng(0), AuxReturn) ' Lautstärke beider Kanäle ermitteln If Retval = MMSYSERR_BADDEVICEID Then MsgBox "Das Audiogerät mit der DeviceID 0 existiert nicht", vbCritical, "Fehler" Exit Sub End If If Retval = MMSYSERR_NOERROR Then LeftVol = Val ("&H" & Hex(AuxReturn And (Not &HFFFF0000))) RightVol = (AuxReturn And &HFFFF0000) / &H10000 Debug.Print "Gerät : 0" If RightVol <> 0 Then ' Falls das Gerät nur einen Monokanal hat Debug.Print "Lautstärke Links: " & LeftVol Debug.Print "Lautstärke Rechts: " & RightVol Else Debug.Print "Lautstärke Links: " & LeftVol End If Debug.Print vbCrLf End If End Sub ' Beispiel 2: Die Berechnung der Lautstärke des ersten Audiogerätes (Index 0) Private Sub Command2_Click () Dim Retval As Long Dim Volume(1) As Integer, AuxReturn As Long Dim RightVol As Long, LeftVol As Long Retval = auxGetVolume(CLng(0), AuxReturn) ' Lautstärke beider Kanäle ermitteln If Retval = MMSYSERR_BADDEVICEID Then MsgBox "Das Audiogerät mit der DeviceID 0 existiert nicht", vbCritical, "Fehler" Exit Sub End If If Retval = MMSYSERR_NOERROR Then CopyMemory Volume(0), AuxReturn, Len(Volume(0)) * 2 LeftVol = Volume(0) RightVol = Volume(1) Debug.Print "Gerät : 0" If RightVol <> 0 Then ' Falls das Gerät nur einen Monokanal hat Debug.Print "Lautstärke Links: " & LeftVol Debug.Print "Lautstärke Rechts: " & RightVol Else Debug.Print "Laustärke: " & LeftVol End If Debug.Print vbCrLf End If End Sub Diese Seite wurde bereits 13.769 mal aufgerufen. |
sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Buchempfehlung Tipp des Monats ![]() Dieter Otter PopUp-Menü wird nicht angezeigt :-( In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. Neu! sevPopUp 2.0 ![]() Dynamische Kontextmenüs! Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... |
||||||||||||||
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. |