Fehlermeldungen mit DirectSound
-
Hallo,
ich möchte eine kleine Anwendung mit DirectSound schreiben.
Habe mir dafür eine MFC-Anwendung gebaut und mit#include <dsound.h>
die DirectSound-Headerdatei eingefügt.
So, dann wollte ich es kompilieren, doch der Compiler meckert mich mit folgenden Fehlermeldungen voll:
d:\DX90SDK\Include\dsound.h(230): error C2143: Syntaxfehler: Es fehlt ';' vor '*' d:\DX90SDK\Include\dsound.h(230): error C2501: 'LPCWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer d:\DX90SDK\Include\dsound.h(230): error C2501: 'LPCWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer d:\DX90SDK\Include\dsound.h(349): error C2501: '_DSBUFFERDESC::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer d:\DX90SDK\Include\dsound.h(365): error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat' d:\DX90SDK\Include\dsound.h(686): error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
Ich habe alle Pfade zu den Bibliotheken gesetzt, sonst würde er ja die Datei nicht finden
Ich habe mir auch mal andere Beispielprojekte angeschaut und da läuft es ohne Probleme.
Ich habe keine Ahnung, was ich falsch mache.Weiß einer eine Lösung für das Problem??
-
Ich kenne die Headerdatei nicht, aber vermutlich befindet sich der Fehler irgendwo im Umfeld von Zeile 230 der <dsound.h>. Könntest du mal die nähere Umgebung dieser Zeile hier posten (+/- 5 Zeilen)?
-
Okay, hier kommen die betreffenden Zeilen.
Die Zeile 230 ist:typedef const WAVEFORMATEX *LPCWAVEFORMATEX;
// // Compatibility typedefs // #ifndef _LPCWAVEFORMATEX_DEFINED #define _LPCWAVEFORMATEX_DEFINED typedef const WAVEFORMATEX *LPCWAVEFORMATEX; #endif // _LPCWAVEFORMATEX_DEFINED #ifndef __LPCGUID_DEFINED__ #define __LPCGUID_DEFINED__ typedef const GUID *LPCGUID; #endif // __LPCGUID_DEFINED__
-
Sieht ganz so aus, als ob der Datentyp "WAVEFORMATEX" nicht definiert ist.
-
Genau, das wars.
Ich habe in der Hilfe nachgeschaut, in welcher Headerdatei WAVEFORMATEX definiert ist, diese inkludiert und jetzt läufts ohne Probleme.
Vielen Dank