![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Abonnent
![]() |
![]() Wie kann ich sounddatein in c++ aufrufen?
ich will eine passwortabfrage programmieren und wennst falsch eingibst soll der sound von HL "access denied" kommen kann mir wer helfen?
____________________________________
\'I think I spider\' |
![]() |
![]() |
![]() |
#2 |
Hero
![]() |
![]() Media Control Interface (MCI):
MCIERROR mciSendCommand( MCIDEVICEID IDDevice, UINT uMsg, DWORD fdwCommand, DWORD dwParam) und mciSendString: MCI_OPEN Öffnet das Gerät MCI_CLOSE Schließt das Gerät MCI_PLAY Startet die Wiedergabe MCI_STOP Beendet die Wiedergabe MCI_SEEK Sucht eine bestimmte Position innerhalb der Datei MCI_RECORD Beginnt mit der Aufnahme des Wellenformklangs MCI_SAVE Speichert den aufgenommenen Klang auf dem Datenträger oder Microsoft Win32 application programming interface (API): BOOL PlaySound( LPCSTR pszSound, HMODULE hmod,DWORD fdwSound ): SND_SYNC Spielt den Klang synchron ab SND_ASYNC Spielt den Klang asynchron ab SND_NODEFAULT Blockiert die Verwendung von Standardklängen SND_MEMORY Der erste Parameter verweist auf eine Speicherdatei SND_LOOP Wiederholt das Abspielen des Klanges bis zum nächsten Aufruf von PlaySound SND_NOSTOP Verhindert den Abbruch der Wiedergabe eines Klanges
____________________________________
Bibel |
![]() |
![]() |
![]() |
#3 |
Abonnent
![]() |
![]() wie sieht das dann im programm text aus?
____________________________________
\'I think I spider\' |
![]() |
![]() |
![]() |
#4 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.631
|
![]() C bzw. C++ Programm, Beispiel wie man ein MCI Gerät bzw. in diesem Fall eine Wave Datei öffnet, abspielt, schliesst, es wurde hier keine Fehlerabfrage programmiert, außerdem muß dem Linker die Importlibrary als Datei winmm.lib angegeben werden, sonst findet das Betriebssystem die Funktion mciSendCommand nicht.
c++ datei ... z.b. main.cpp bzw. fensterfunktionsdatei.cpp ... window_proc ... open_device.cpp --- Anfang der Einfügungen in open_device.cpp ... gleich nach #include <windows.h> folgende Zeilen einfügen: --- Anfang der einzufügenden Zeilen Code:
#include <mmsystem.h> MCI_OPEN_PARMS mciOpenParameters; // respektive in einer weiteren Includedatei ... Open Device Aufruf z.B. bei case WM_CREATE: der Fensterfunktion WndProc einfügen: also: case WM_CREATE: --- Anfang der einzufügenden Zeilen Code:
mciOpenParameters.lpstrDeviceType= (LPCSTR)MCI_DEVTYPE_WAVEFORM_AUDIO; mciOpenParameters.lpstrElementName= "C:\\WINDOWS\\CHORD.WAV"; ulrc = // ulrc ... ULONG ReturnCode mciSendCommand(0, MCI_OPEN, MCI_WAIT | MCI_OPEN_ELEMENT | MCI_OPEN_TYPE | MCI_OPEN_TYPE_ID, (ULONG)&mciOpenParameters); und: case WM_DESTROY: --- Anfang der einzufügenden Zeilen Code:
ulrc = // ulrc ... ULONG ReturnCode mciSendCommand(mciOpenParameters.wDeviceID, MCI_CLOSE, MCI_WAIT, (ULONG)&mciOpenParameters); --- Ende der Einfügungen in open_device.cpp ************************************************** ****************** --- Anfang der Einfügungen in play_device.cpp --- Anfang der einzufügenden Zeilen Code:
#include <mmsystem.h> extern MCI_OPEN_PARMS mciOpenParameters; // wurde in open_device.cpp bereits definiert, deswegen hier der Zusatz extern MCI_PLAY_PARMS mciPlayParameters; // hier global, sonst z.B. in einer Funktion definieren --- Anfang der einzufügenden Zeilen Code:
case WM_USER_PLAY_WAVE: // WM_USER_PLAY_WAVE muß der Programmierer letztlich festlegen über #define WM_USER_PLAY_WAVE (WM_USER + 1) z.B. mciSendCommand(mciOpenParameters.wDeviceID, MCI_PLAY, MCI_WAIT, (ULONG)&mciPlayParameters); --- Ende der Einfügungen in play_device.cpp mfg Kikakater |
![]() |
![]() |
![]() |
#5 |
Abonnent
![]() |
![]() thx
kikater
____________________________________
\'I think I spider\' |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|