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

Phil239

Frischling

  • »Phil239« ist der Autor dieses Themas

Beiträge: 79

Beruf: Student

  • Private Nachricht senden

1

15.08.2008, 16:13

Fehler beim Debuggen

Hallo,
habe mir vor ein paar Tagen das Buch (3D-Spieleprogrammierung Auflage 1) gekauft. Jetzt wollte ich das erste Beispielprogramm kompilieren, was dann zu folgenden Fehlern kam:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
------ Erstellen gestartet: Projekt: Fenster, Konfiguration: Debug Win32 ------
Kompilieren...
Direct3DEnum.cpp
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'PVOID64'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Buffer'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\tribase\include\dshowbaseclasses\ctlutil.h(278) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
Fenster.cpp
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'PVOID64'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Buffer'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\tribase\include\dshowbaseclasses\ctlutil.h(278) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
InitDirect3D.cpp
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'PVOID64'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Buffer'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\tribase\include\dshowbaseclasses\ctlutil.h(278) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
InitWindow.cpp
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'PVOID64'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(236) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Buffer'
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\programme\microsoft sdks\windows\v6.0a\include\winnt.h(7818) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
c:\tribase\include\dshowbaseclasses\ctlutil.h(278) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
Code wird generiert...
Das Buildprotokoll wurde unter "file://C:\TriBase\Beispiele\Kapitel 02\01 - Fenster\Debug\BuildLog.htm" gespeichert.
Fenster - 24 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

Brauche unbedingt Hilfe; die anderen Programme von der CD lassen sich auch nicht ohne Fehler kompilieren, geschweigedenn starten.

EDIT:
Ach, übrigens benutze ich Visual C++ 2008 (.NET).

BlazeX

Alter Hase

Beiträge: 478

Wohnort: DD

Beruf: Maschinenbau-Student

  • Private Nachricht senden

2

15.08.2008, 17:00

Hast du das Platform-SDK und das DirectX-SDK?
Hast du schonmal versucht die TriBase-Engine zu kompilieren?

Beschreib mal was du alles gemacht hast.

BTW: Warum die Erste Auflage? Es gibt mitlerweile die Dritte.

Phil239

Frischling

  • »Phil239« ist der Autor dieses Themas

Beiträge: 79

Beruf: Student

  • Private Nachricht senden

3

15.08.2008, 17:10

Hallo,
also ich habe die Debug Version des DirectX-SDK's installiert und das TriBase-Verzeichnis von der CD kopiert. Dann habe ich die Ordner in das Programm so "eingefügt", wie es im Buch steht.

Wenn ich die TriBase Engine kompiliere kommen die selben Fehler.

Habe mir Auflage eins gekauft, weil sie billiger-sorry, kostengünstiger- war.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

4

15.08.2008, 17:30

`Da du 2008 nutzt würde ich dir zu diesem Link raten: https://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=4810
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Phil239

Frischling

  • »Phil239« ist der Autor dieses Themas

Beiträge: 79

Beruf: Student

  • Private Nachricht senden

5

16.08.2008, 10:40

Wo kann ich die gelinkten Libraries ändern?

Zitat


Im importierten Projekt (das gilt für ALLE in der 2005er-Version importierten Projekte) müssen erst einmal die hinzugelinkten Libraries geändert werden:
- (entfernen): odbc32.lib odbccp32.lib (das sind die beiden letzten)
- (hinzufügen): kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib

Außerdem:

Quellcode

1
c1xx : fatal error C1083: Datei (Quelle) kann nicht geöffnet werden: ".\wxdebug.cpp": No such file or directory
Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

Phil239

Frischling

  • »Phil239« ist der Autor dieses Themas

Beiträge: 79

Beruf: Student

  • Private Nachricht senden

6

16.08.2008, 18:38

Weiß denn keiner eine Antwort? :cry:
Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

7

19.08.2008, 01:49

Zitat von »"Phil239"«

Wo kann ich die gelinkten Libraries ändern?

Projekteigenschaften -> Konfigurationseigenschaften -> Linker -> Eingabe -> Zusätzliche Abhängigkeiten ;)

p0llux

Treue Seele

Beiträge: 101

Wohnort: Aachen

Beruf: HiWi (theo. Inf.)

  • Private Nachricht senden

8

19.08.2008, 02:00

Hast du vielleicht am Ende einer Klassendeklaration das ; vergessen?

Phil239

Frischling

  • »Phil239« ist der Autor dieses Themas

Beiträge: 79

Beruf: Student

  • Private Nachricht senden

9

22.08.2008, 12:03

Hallo,
wenn ich jetzt debugge, kommt dieses Fenster hier:

(Link)

Was soll ich denn da eingeben?
Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

10

22.08.2008, 16:38

Das ist die bestätigung, dass es kompiliert hat und eine lib/dll ist. Glückwünsch :). Nun kannst du diese in eine Exe einbinden/linken.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Werbeanzeige