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

21.04.2006, 15:41

Hab da auch eine kleine Frage, ich hab VC++2005 Prof. und hab mir die sachen nach der anletung im buch(3. auflage) eingerichtet - allerdings hab ich bei den libary files einen eintrag names

Zitat

$(VCInstallDir)PlattformSDK\lib


gesehen. Ist bei mir bereits das plattform sdk installiert?(habs zumindest nicht wissentlich gemacht) - oder muss ich mir das trotdem nochmal runterladen und dann entsprechend neu verlinken?

Der compiler wirft mir nächmlich folgenden fehler aus, wen ich ein neues projekt erstelle(win32-projekt) und einfach mal die tribase.h includiere.

Zitat


\program files\microsoft directx sdk (december 2005)\include\dsound.h(230) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(230) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(230) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(349) : error C2146: syntax error : missing ';' before identifier 'lpwfxFormat'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(349) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(349) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(365) : error C2146: syntax error : missing ';' before identifier 'lpwfxFormat'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(365) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(365) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(416) : error C2146: syntax error : missing ';' before identifier 'lpwfxFormat'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(416) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(416) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(425) : error C2146: syntax error : missing ';' before identifier 'lpwfxFormat'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(425) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(425) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(686) : error C2061: syntax error : identifier 'LPWAVEFORMATEX'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(696) : error C2061: syntax error : identifier 'LPCWAVEFORMATEX'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(770) : error C2061: syntax error : identifier 'LPWAVEFORMATEX'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(780) : error C2061: syntax error : identifier 'LPCWAVEFORMATEX'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(1041) : error C2061: syntax error : identifier 'LPWAVEFORMATEX'
c:\program files\microsoft directx sdk (december 2005)\include\dsound.h(1099) : error C2061: syntax error : identifier 'LPWAVEFORMATEX'
c:\program files\engine\tribase\include\tribase.h(45) : fatal error C1083: Cannot open include file: 'DShow.h': No such file or directory

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

22.04.2006, 10:26

Du solltest das Platform-SDK sicherheitshalber nochmal runterladen.
Dann hast du auch garantiert die neueste Version.

3

22.04.2006, 14:29

Zitat von »"David Scherfgen"«

Du solltest das Platform-SDK sicherheitshalber nochmal runterladen.
Dann hast du auch garantiert die neueste Version.


Ich hab die "Windows Server 2003 R2 SDK - March 2006 Edition" gedownloaded, da stand das die neuer als die Version ist, die du in deiner Anleitung verwendest.

Daran kanns aber eigentlich nicht liegen?

Ich krieg zumindest weder mit VC2003 als auch mit VC2005 nichts fehlerfrei kompiliert.

Die TriBase-Enginge Kompilierung bricht mit folgendem Fehler ab,

Zitat


TriBase fatal error LNK1104: Datei 'stlport_vc71_static.lib' kann nicht geöffnet werden
(Dieser Fehler tritt auf, wenn ich deine vorgefertige Projektmappe der tribase engine mit VC2003 kompilieren möchte
[/quote]

Unter Extras->Optionen->Projekt->VC++Verzeichniss hab ich unter den "include"-Dateien die engine, das DX-sDK und das plattform skd verlinkt: so:
1)C:\Program Files\Engine\TriBase\Include
2)C:\Program Files\Microsoft DirectX SDK (December 2005)\Include
3)C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include
4)...(die standard einträge die schon vorhanden waren)

bei den Bibliotheksdateien hab ich as wie folgt eingetragen:
1)C:\Program Files\Engine\TriBase\Lib
2)C:\Program Files\Microsoft DirectX SDK (December 2005)\Lib\x86
3)C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib
4)...(die standard einträge die schon vorhanden waren)

Sollte doch so richtig sein? kA worans liegt, aber die engine will sich nicht kompilieren lassen ;_;

*help*

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

22.04.2006, 15:32

Hast du die DirectShow-BaseClasses zuvor kompiliert?
Das musst du nämlich tun.

5

22.04.2006, 16:49

Ah ok, danke. Jetzt lässt sich immerhin schon die TriBase-engine mal fehlerfrei kompilieren.

Allerdings bleibt mein Problem bestehen wenn ich die "Tribase.h" in mein Projekt includiere kommen lauter fehler hoch.

Was mich allerdings etwas iritiert, das die alle im DX-SDK entstehen. Wenn ich auf den ersten fehler drauf klicke wird mir der "Fehler" in der dsound.h angezeigt.

Zitat


DirectX error C2143: Syntaxfehler: Es fehlt ';' vor '*'
DirectX error C2501: 'LPCWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSBUFFERDESC::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSBUFFERDESC::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSBUFFERDESC1::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSBUFFERDESC1::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSCBUFFERDESC1::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSCBUFFERDESC1::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSCBUFFERDESC::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSCBUFFERDESC::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(803): error C2373: 'WAVEFORMATEX': Neudefinition; unterschiedliche Modifizierer
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(806): error C2378: 'LPCWAVEFORMATEX': Neudefinition; Symbol kann nicht mit typedef überladen werden
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(848): error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(904): error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'


Könnte der Fehler evtl. bei den .lib's liegen die ich bei zusätzliche Abhängigkeiten eingetragen hab? Dort hab ich zusätzlich folgende .lib's eingetragen

Zitat


StrmBaseD.lib
StrmIIDs.lib
TriBaseD.lib
d3d9.lib
d3dx9d.lib
dinput8.lib
dsound.lib
strmiids.lib
strmbased.lib
dxerr9.lib
dxguid.lib
winmm.lib

6

23.04.2006, 20:02

Zitat von »"YetAnotherNoob"«

Ah ok, danke. Jetzt lässt sich immerhin schon die TriBase-engine mal fehlerfrei kompilieren.

Allerdings bleibt mein Problem bestehen wenn ich die "Tribase.h" in mein Projekt includiere kommen lauter fehler hoch.

Was mich allerdings etwas iritiert, das die alle im DX-SDK entstehen. Wenn ich auf den ersten fehler drauf klicke wird mir der "Fehler" in der dsound.h angezeigt.

Zitat


DirectX error C2143: Syntaxfehler: Es fehlt ';' vor '*'
DirectX error C2501: 'LPCWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSBUFFERDESC::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSBUFFERDESC::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSBUFFERDESC1::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSBUFFERDESC1::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSCBUFFERDESC1::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSCBUFFERDESC1::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'lpwfxFormat'
DirectX error C2501: '_DSCBUFFERDESC::LPWAVEFORMATEX': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2501: '_DSCBUFFERDESC::lpwfxFormat': Fehlende Speicherklasse oder Typspezifizierer
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
DirectX error C2061: Syntaxfehler: Bezeichner 'LPWAVEFORMATEX'
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(803): error C2373: 'WAVEFORMATEX': Neudefinition; unterschiedliche Modifizierer
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(806): error C2378: 'LPCWAVEFORMATEX': Neudefinition; Symbol kann nicht mit typedef überladen werden
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(848): error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'
c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\MMSystem.h(904): error C2061: Syntaxfehler: Bezeichner 'LPCWAVEFORMATEX'


Könnte der Fehler evtl. bei den .lib's liegen die ich bei zusätzliche Abhängigkeiten eingetragen hab? Dort hab ich zusätzlich folgende .lib's eingetragen

Zitat


StrmBaseD.lib
StrmIIDs.lib
TriBaseD.lib
d3d9.lib
d3dx9d.lib
dinput8.lib
dsound.lib
strmiids.lib
strmbased.lib
dxerr9.lib
dxguid.lib
winmm.lib


... :crying: *push*

7

23.04.2006, 20:38

hmm es war mal so das es reichte wenn man kurzerhand #include <mmsystem.h> vor #include <TriBase.h> schrieb ;)
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Anonymous

unregistriert

8

23.04.2006, 20:57

Wieso holt sich jemand Prof der mit solchen Dingen scheinbar enorme Probleme hat wenn es doch Express 4 free gibt und wir haufenweise Tutorials darüber haben? Fragen über Fragen und keine Antworten...

9

24.04.2006, 08:07

Zitat von »"nix da"«

Wieso holt sich jemand Prof der mit solchen Dingen scheinbar enorme Probleme hat wenn es doch Express 4 free gibt und wir haufenweise Tutorials darüber haben? Fragen über Fragen und keine Antworten...


bin mittlerweile bei 2003, bin zurück gegangen in der höffnung es würde was helfen.

>hmm es war mal so das es reichte wenn man kurzerhand #include <mmsystem.h> vor #include <TriBase.h> schrieb

die mmsystem.h hab ich so noch nie includiert - hab ich das überlesen das man die mit angeben muss oder hätte ich da wissen müssen? werds mal mit mmsystem.h probieren.

10

24.04.2006, 13:46

Zitat von »"Devil"«

hmm es war mal so das es reichte wenn man kurzerhand #include <mmsystem.h> vor #include <TriBase.h> schrieb ;)


und siehe da, es funktioniert :roll: :gluck:

DANKE!!!!

Werbeanzeige