Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

17.02.2007, 21:27

Einbindung von DirectX - Fehler

Ich habe das Microsoft DirectX 9.0 SDK (Summer 2004) von der beiligenden CD des Buchs 3D-Spiele-Programmierung mit Direct9 und C++ (zweite Auflage) installiert. Ebenso ist DirectX 9.0c installiert. Ich habe auch Microsoft Visual c++ 6.0 installiert. und scheitere an der ersten Aufgabe.

Ich habe die Lib und Include Ordner nach beschreibung des Buches eingebunden (DirectX SDK + TriBase).

So sieht der Code aus:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include "tribase.h"

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow )
{
    if (tbInit())
        tbWriteToLog("Inizialisierung fehlgeschlagen!\n");
    else
        {
        tbWriteToLog("Inizialisierung erfolgreich!\n");
    

        }

    tbExit();
    
    return 0;
}


... und dass sind die Fehler ...

Zitat

c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(230) : error C2143: Syntaxfehler : Fehlendes ';' vor '*'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(230) : error C2501: 'LPCWAVEFORMATEX' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(305) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'dwReserved1'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(305) : error C2501: 'DWORD_PTR' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(305) : error C2501: 'dwReserved1' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(306) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'dwReserved2'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(306) : error C2501: 'DWORD_PTR' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(306) : error C2501: 'dwReserved2' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(349) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'lpwfxFormat'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(349) : error C2501: 'LPWAVEFORMATEX' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(349) : error C2501: 'lpwfxFormat' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(365) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'lpwfxFormat'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(365) : error C2501: 'LPWAVEFORMATEX' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(365) : error C2501: 'lpwfxFormat' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(416) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'lpwfxFormat'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(416) : error C2501: 'LPWAVEFORMATEX' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(416) : error C2501: 'lpwfxFormat' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(425) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'lpwfxFormat'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(425) : error C2501: 'LPWAVEFORMATEX' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(425) : error C2501: 'lpwfxFormat' : Fehlende Speicherklasse oder Typbezeichner
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(686) : error C2061: Syntaxfehler : Bezeichner 'LPWAVEFORMATEX'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(696) : error C2061: Syntaxfehler : Bezeichner 'LPCWAVEFORMATEX'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(770) : error C2061: Syntaxfehler : Bezeichner 'LPWAVEFORMATEX'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(780) : error C2061: Syntaxfehler : Bezeichner 'LPCWAVEFORMATEX'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(1041) : error C2061: Syntaxfehler : Bezeichner 'LPWAVEFORMATEX'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(1099) : error C2061: Syntaxfehler : Bezeichner 'LPWAVEFORMATEX'
c:\programme\microsoft visual studio\vc98\include\mmsystem.h(728) : error C2373: 'WAVEFORMATEX' : Neudefinition; unterschiedliche Modifizierer
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(230) : Siehe Deklaration von 'WAVEFORMATEX'
c:\programme\microsoft visual studio\vc98\include\mmsystem.h(729) : error C2378: 'LPCWAVEFORMATEX' : Neudefinition; Symbol kann nicht mit typedef überladen werden
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\dsound.h(230) : Siehe Deklaration von 'LPCWAVEFORMATEX'
c:\programme\microsoft visual studio\vc98\include\mmsystem.h(774) : error C2061: Syntaxfehler : Bezeichner 'LPCWAVEFORMATEX'
c:\programme\microsoft visual studio\vc98\include\mmsystem.h(830) : error C2061: Syntaxfehler : Bezeichner 'LPCWAVEFORMATEX'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\strmif.h(1018) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'HSEMAPHORE'
c:\programme\microsoft directx 9.0 sdk (summer 2004)\include\strmif.h(1018) : fatal error C1004: Unerwartetes Dateiende gefunden
Fehler beim Ausführen von cl.exe.



Ich bitte um Hilfe, da ich nicht weiterkomme!

Danke!

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

2

17.02.2007, 21:37

Ich würde dir erstmal raten, VC 2005 Express, das neueste DX- und PlatformSDK zu installieren.

Ansonsten könnte es auch sein, dass du in deiner stdafx.h die Zeile
#define WIN32_LEAN_AND_MEAN (oder sowas ähnliches) auskommentieren musst, falls sie da ist.

3

17.02.2007, 21:40

Wo soll ich das alles herzaubern ... ich habe nen 56k Modem :?: :?:

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

4

17.02.2007, 21:41

Ich bins nochmal... ich hab grad das getan, was eigentlich du zuerst tun solltest, wenn du ein Problem hast: die FAQ durchsuchen :roll:

https://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=3426

5

17.02.2007, 21:57

Ich habe hier noch ein aktuelleres SDK (dxsdk_apr2005) - würde sich dann der Fehler auch wegrationalisieren?

Grüße

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

6

17.02.2007, 21:59

Nimm lieber nen aktuelleren Compiler ;) Da hast du auf lange Sicht mehr von ... Das VS 6 ist mittlerweile wie ... alt?

7

17.02.2007, 22:19

kann ich die D3DX9.LIB nicht irgendwo einzeln runterladen?

8

17.02.2007, 23:09

Die datei einzeln herunterzladen ist nict umbedingt die beste Idee. DX ist ja ein Gesammtkonstrukt und es kann gut sein das dir dann wichte beziehungen innerhalb von DX fehlen. Du bräuchtest auch mindestens die passende DLL dazu.

EDIT: Warum nimst du nicht das SDK vom Buch? Das ist doch genau das Richtige für die TB Engine

9

17.02.2007, 23:13

wo kann man sich so eine Autoren Version von einem aktuellen Comilier runterladen?

Ich habe das SDK vom Buch genommen ... da tritt aber genau dieser Fehler auf

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

10

17.02.2007, 23:15

Bevor du anfängst und hier mit irgendwelchen obskuren Gerätschaften auftauchst ... Nimm die Express Edition des VS.

Und nein, ich zumindest gebe dir keinen Link. Mithilfe von Forensuche und FAQ solltest du tausendfach fündig werden.

Werbeanzeige