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

09.11.2008, 11:23

Problem Direct3D-Anwendung (2.4.7) S: 129/130

Hallo,

ich bin momentan im Buch bei der Direct3D-Anwendung angekommen.

Folgendes Programm:

C-/C++-Quelltext

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
// FirstDirectX.cpp : Definiert den Einstiegspunkt für die Anwendung.

//


#include "stdafx.h"
#include "FirstDirectX.h"



// FirstDirX.cpp : Definiert den Einstiegspunkt für die Anwendung.

//


#include <Windows.h>
#include "stdafx.h"
#include "InitWindow.h"
#include "Direct3DEnum.h"
#include "InitDirect3D.h"
#include "Resource.h"
using namespace std;

tbResult Render(float fNumSecsPassed)
{
    return TB_OK;
}

tbResult Move(float fNumSecsPassed)
{
    return TB_OK;
}


int WINAPI WinMain(HINSTANCE hInstance,
                   HINSTANCE hPreInstance,
                   char* pcCmdLine,
                   int iShowCmd)
{
    tbInit();

    SDirect3DParameters Direct3DParameters;
    tbResult Result = GetDirect3DParameters(&Direct3DParameters);
    if(Result == TB_ERROR)
    {
        MessageBox(NULL, "Fehler beim Abzählen!", "Fehler",
            MB_OK | MB_ICONEXCLAMATION);
        tbExit();
        return 1;
    }
    else if(Result == TB_CANCELED)
    {
        tbExit();
        return 0;
    }


    if(InitWindow(Direct3DParameters.VideoMode.Widght,
        Direct3DParameters.VideoMode.Height,
        "Beispielprogramm Nr. 2: Direct3D-Abzählung",
        LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON1))))
    {
        MessageBox(NULL,"Fehler beim erstellen des Fensters!",
            "Fehler", MB_OK | MB_ICONEXCLAMATION);
        ExitWindows();
        tbExit();
        return 1;

    }

    if(InitDirect3D(g_hWindow, "Fehler beim Initialisieren von Direct3D!",
        "Fehler", MB_OK | MB_ICONEXCLAMATION);
    ExitwindowS();
    tbExit();
    return 1;
}

tbDoMessageLoop(Render, Move);

ExitDirect3D();
ExitWindow();

tbExit();

return 0;
}


Im Buch werden die Includes "InitWindow.h", "Direct3DEnum.h" und "InitDirect3D.h" mit einem Pfad angegeben. Wenn ich die 3 mit Pfad auf der CD angebe bekomme ich den Fehler das die Dateien nicht gefunden werden. Selbiges wenn ich den Pfad + die Dateien auf einen seperaten Ordner auf meinen PC lege.
Nun habe ich die 3 direkt in das Projekt verzeichnis des Programmes gegeben. Nun kommen folgende Fehlermeldungen:

C-/C++-Quelltext

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
1>------ Erstellen gestartet: Projekt: FirstDirectX, Konfiguration: Debug Win32 ------
1>Kompilieren...
1>FirstDirectX.cpp
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'InitWindow'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(22) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'ExitWindow'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(22) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(23) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'DoMessageLoop'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(23) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(23) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(23) : error C2065: 'pRenderProc': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(23) : error C2144: Syntaxfehler: 'float' sollte auf ')' folgen
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(23) : error C2059: Syntaxfehler: ')'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(20) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'DeviceType'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(22) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'VideoMode'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(23) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'BackBufferFormat'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(23) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(23) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(24) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'ZStencilBufferFormat'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(24) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(24) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(25) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'MultiSamplingType'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(25) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(25) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(28) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'DeviceCaps'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(28) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(28) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(33) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'GetDirect3DParameters'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(33) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(33) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(33) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(15) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'g_pD3D'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(15) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(15) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(16) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'g_pD3DDevice'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(16) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(16) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(20) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'InitDirect3D'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(20) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(21) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'ExitDirect3D'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(21) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initdirect3d.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(18) : error C2871: 'std': Es ist kein Namespace mit diesem Namen vorhanden
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(20) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Render'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(20) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(22) : error C2065: 'TB_OK': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(25) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Move'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(25) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(25) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(26) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(27) : error C2065: 'TB_OK': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(36) : error C3861: "tbInit": Bezeichner wurde nicht gefunden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(39) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'Result'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(39) : error C2065: 'Result': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(40) : error C2065: 'Result': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(40) : error C2065: 'TB_ERROR': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(43) : error C2664: 'MessageBoxW': Konvertierung des Parameters 2 von 'const char [22]' in 'LPCWSTR' nicht möglich
1>        Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(44) : error C3861: "tbExit": Bezeichner wurde nicht gefunden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(47) : error C2065: 'Result': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(47) : error C2065: 'TB_CANCELED': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(49) : error C3861: "tbExit": Bezeichner wurde nicht gefunden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(54) : error C2039: 'VideoMode': Ist kein Element von 'SDirect3DParameters'
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(18): Siehe Deklaration von 'SDirect3DParameters'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(54) : error C2228: Links von ".Widght" muss sich eine Klasse/Struktur/Union befinden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(55) : error C2039: 'VideoMode': Ist kein Element von 'SDirect3DParameters'
1>        c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\direct3denum.h(18): Siehe Deklaration von 'SDirect3DParameters'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(55) : error C2228: Links von ".Height" muss sich eine Klasse/Struktur/Union befinden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(57) : error C2065: 'IDI_ICON1': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(60) : error C2664: 'MessageBoxW': Konvertierung des Parameters 2 von 'const char [36]' in 'LPCWSTR' nicht möglich
1>        Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(61) : warning C4003: Nicht genügend übergebene Parameter für das Makro 'ExitWindows'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(62) : error C3861: "tbExit": Bezeichner wurde nicht gefunden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(68) : error C2660: 'InitDirect3D': Funktion akzeptiert keine 4 Argumente
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(68) : error C2143: Syntaxfehler: Es fehlt ')' vor ';'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(69) : warning C4390: ';': Leere kontrollierte Anweisung aufgetreten; ist dies beabsichtigt?
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(69) : error C3861: "ExitwindowS": Bezeichner wurde nicht gefunden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(70) : error C3861: "tbExit": Bezeichner wurde nicht gefunden.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(74) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(74) : error C2078: Zu viele Initialisierungen
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(74) : error C2440: 'Initialisierung': 'int (__cdecl *)(float)' kann nicht in 'int' konvertiert werden
1>        Es gibt keinen Kontext, in dem diese Konvertierung möglich ist
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(76) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(77) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(79) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(81) : error C2059: Syntaxfehler: 'return'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(82) : error C2059: Syntaxfehler: '}'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(82) : error C2143: Syntaxfehler: Es fehlt ';' vor '}'
1>c:\dokumente und einstellungen\administrator\eigene dateien\firstdirectx\firstdirectx\firstdirectx.cpp(82) : error C2059: Syntaxfehler: '}'
1>Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\Administrator\Eigene Dateien\FirstDirectX\FirstDirectX\Debug\BuildLog.htm" gespeichert.
1>FirstDirectX - 91 Fehler, 2 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


Copy/Paste der Inhalte der .h dateien und folgendes Einfügen in ein Leeres .h Element mit selbigen Namen der normalen .h Datei funktioniert auch nicht!
Alle anderen vorherigen Programme funktionierten und es sind auch alle notwendigen Dateien vorhanden.

Ich benutze Visual C++ 2008 Express Edition.
Ich bitte um Hilfe.
MfG
Klanthu

2

09.11.2008, 11:47

Hi Klanthu,

Willkommen im Forum!

Folgendes zu deinem Problem vorab:

Hast du das DirectX SDK installiert?
Das Windows (Platform) SDK installiert?

Die in das lokale Verzeichnis kopierten Dateien zu deinem Projekt hinzugefügt?

Die Verzeichnispfade in den Projekteinstellungen eingetragen?

Die benötigten Libs (Tribase.lib usw.) in den Projekteinstellungen eingetragen?

3

09.11.2008, 11:59

DirectX SDK ist installiert und in Visualc++ eingefügt.
Selbiges mit Windows Plattform SDK.
Ich habe die Tribase.lib hinzugefügt.
Problem bleibt bestehen.
Die Verzeichnispfade wüsste ich nicht wo ich die Eintragen könnte.
Ich habe sie momentan in den Projektordner gelegt und auch im Visualc++ Projekt nochmals einzeln als .h Datei angegeben.

4

09.11.2008, 12:24

Du verwendest die Debug-Konfiguration.
Also benötigst du die entsprechenden Libraries.

Projekteinstellungen - Linker - Eingabe -> Zusätzliche Abhängigkeiten:

tribased.lib statt tribase.lib

Andere Projekteinstellungen prüfen:

Libraries
Unter Projekteinstellungen - Linker - Allgemein -> Zusätzliche Bibliotheksverzeichnisse sollte eingetragen sein:
C:\DeinTribaseVerzeichnis\TriBase\Lib;
C:\DeinDirectXSDKVerzeichnis\Lib; (ggf. im Ordner x86 oder x64)
C:\DeinPlatformSDKVerzeichnis\Lib;

Header
Unter Projekteinstellungen - C/C++ - Allgemein -> Zusätzliche Includeverzeichnisse sollte eingetragen sein:
C:\DeinTribaseVerzeichnis\TriBase\Include;
C:\DeinDirectXSDKVerzeichnis\Include;
C:\DeinPlatformSDKVerzeichnis\Include;

Ansonsten hast du die benötigten Dateien (.h, .cpp) über "Hinzufügen -> Vorhandenes Element" dem Projekt hinzugefügt?

5

09.11.2008, 13:01

Erstmal danke für die Hilfe,

ich habe nun die zusätzlichen Bibliotheksverzeichnisse und die zusätzlichen Includeverzeichnisse hinzugefügt.
Die .h Dateien habe ich schon vorher hinzugefügt gehabt.
Auch die Tribase.lib habe ich in Tribased.lib geändert, es geht weder mit nur Tribased.lib noch mit beiden.
Leider kommen immernoch die selben Fehler.

6

09.11.2008, 14:26

Am besten du kopierst dir das gesamte Projekt nochmals auf die Festplatte.
(Schreibschutz rausnehmen nicht vergessen)
Anschließend führst du o.g. Schritte noch mal durch.

7

09.11.2008, 16:58

Ich konnte die Anzahl der Fehler nun durch einen Rechtschreibfehler in der stdafx.h auf 49 reduzieren. Ich weiß nicht obs weiter hilft aber hier die Fehler:

C-/C++-Quelltext

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
1>------ Erstellen gestartet: Projekt: FirstDirectX, Konfiguration: Debug Win32 ------
1>Kompilieren...
1>stdafx.cpp
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'InitWindow'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(22) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'ExitWindow'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(22) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(23) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'DoMessageLoop'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(23) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(23) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(23) : error C2065: 'pRenderProc': nichtdeklarierter Bezeichner
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(23) : error C2144: Syntaxfehler: 'float' sollte auf ')' folgen
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(23) : error C2059: Syntaxfehler: ')'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(20) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'DeviceType'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(22) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'VideoMode'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(22) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(23) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'BackBufferFormat'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(23) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(23) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(24) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'ZStencilBufferFormat'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(24) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(24) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(25) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'MultiSamplingType'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(25) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(25) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(28) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'DeviceCaps'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(28) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(28) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(33) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'GetDirect3DParameters'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(33) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(33) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\direct3denum.h(33) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(15) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'g_pD3D'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(15) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(15) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(16) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'g_pD3DDevice'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(16) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(16) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(20) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'InitDirect3D'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(20) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(20) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(21) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'ExitDirect3D'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(21) : error C2086: 'int tbResult': Neudefinition
1>        c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initwindow.h(21): Siehe Deklaration von 'tbResult'
1>c:\dokumente und einstellungen\administrator\eigene dateien\kopie (2) von firstdirectx\firstdirectx\initdirect3d.h(21) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
1>Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\Administrator\Eigene Dateien\Kopie (2) von FirstDirectX\FirstDirectX\Debug\BuildLog.htm" gespeichert.
1>FirstDirectX - 49 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


Ich bin nochmal alles durchgegangen und bin mir ziemlich sicher das ich Alles beachtet habe was die zusätzlichen Verzeichnisse, Dateien etc. angeht.

8

09.11.2008, 17:09

Sind in den Einstellungen "Vorkompilierte Header verwenden" eingestellt?

9

09.11.2008, 17:18

Es war auf "Vorkompilierten Header erstellen (/Yc)".
Ich habe es einmal mit "Vorkompilierten Header erstellen (/Yc)",
einmal mit "Vorkompilierte Header nicht verwenden" und
einmal mit "Vorkompilierten Header verwenden (/Yu)" probiert.
Alle 3 brachten die selben 49 Fehler nochmal.

10

10.11.2008, 09:09

Wundert mich, dass die stdafx.h einen Rechtschreibfehler enthalten hat.
Die macht ja nichts anderes, als andere Header einzubinden.

Einfach Ein- und Ausschalten der vorkompilierten Header reicht übrings nicht.
Hier gibts ein kleines Tutorial über die Verwendung von vorkompilierten Headern. (Falls du dich damit nicht auskennst)

Ansonsten: Hast du die Dateien (jeweils .h und .cpp) Direct3DEnum, InitDirect3D und InitWindow dem Projekt hinzugefügt?
(Abweichungen von Namen möglich, da ich Auflage 2 besitze)

Werbeanzeige