Hallo AXL,
folgenden Programmcode in ein VBA Modul kopieren :
' **** CUT HERE *****
Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" _
(lpszName As Any, ByVal hModule As Long, ByVal dwFlags As Long) As Long
Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" _
(ByVal lpModuleName As String) As Long
Private Const SND_ALIAS = &H10000 ' der angegebene Name muss ein Eintrag aus der
' WIn.ini unter [Sounds] sein
Private Const SND_ALIAS_ID = &H110000 ' der angegebene Name muss ein Key aus der
' Win.ini unter [Sounds] sein
Private Const SND_APPLICATION = &H80 ' der angegebene Name ist ein Ereignissound
Private Const SND_ASYNC = &H1 ' Stoppt die Wiedergabe aller Sounddateien, um diese abzuspielen
Private Const SND_FILENAME = &H20000 ' der angegebene Name ist ein Pfad zu einer
' Wave-Datei
Private Const SND_LOOP = &H8 ' wiederholt unendlich oft die Wiedergabe
Private Const SND_MEMORY = &H4 ' der angegebene Name ist ein Byte Array mit den
' Wave-Datei-Daten
Private Const SND_NODEFAULT = &H2 ' spielt keinen Standardsound ab wenn die
' angegebene Datei nicht gefunden wird
Private Const SND_NOSTOP = &H10 ' stoppt keine momentan laufenden Sounds
Private Const SND_NOWAIT = &H2000 ' wartet nicht auf das Beenden des laufenden Sounds
' um dann den angegebenen Sound abzuspielen
Private Const SND_PURGE = &H40 ' stoppt die unendliche Wiedergabe der Sounds, die mit
' SND_LOOP eingeleitet wurde
Private Const SND_RESOURCE = &H40004 ' der angegebene Name ist der Name einer
' Ressource in der sich die Wave-Datei befindet, hierfür muss hModule das
' Modul-Handle der Anwendung bekommen, die die Ressource besitzt
Private Const SND_SYNC = &H0 ' die Funktion kehrt erst nach Beenden der Wiedergabe
' des Sounds zurück
' Sound direkt aus der Datei abspielen, ohne auf Beenden des Sounds zu warten
Sub catmain()
Dim Retval As Long
' spielt den Sound ab und bricht den Vorgang ab, wenn diese Funktion erneut
' aufgerufen wird, bevor der Sound komplett abgespielt wurde
Retval = PlaySound(ByVal "c:\temp\test.wav", 0&, SND_ASYNC Or _
SND_FILENAME Or SND_NODEFAULT)
End Sub
' **** CUT HERE *****
Das Beispiel stammt von http://www.vbarchiv.net.
Bitte beachten: Die Pfadangabe zum WAV File darf keine Leerzeichen enthalten.
C4N
Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP