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

Anonymous

unregistriert

1

24.02.2004, 19:24

Probleme mit Beispielprogramm aus 2.4.2

Hallo !
Ich habe da ein kleines Problem mit dem ersten richtigen Beispielprogramm aus dem 2. Kapitel, um genau zu sein 2.4.2.
Mit dem Programm soll man mit Hilfe der IDirect3D9-Schnittstelle Adapterinformationen auslesen können.
Habe das Programm exakt abgeschrieben und zig mal auf Fehler überprüft, jedoch nichts gefunden.
Ich habe die Headerdatei D3D9.h in mein Includeverzeichnis kopiert und ebenfalls die Bibliotheksdateien D3D9.lib und DXERR9.lib und auch angegeben.
Funktioniert jedoch trotzdem nicht.

Hier noch den Fehler, den mein VC ausspuckt:

Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/WinAPI.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.


Also ich kann damit nichts anfangen.
Es wäre wirklich nett, wenn sich das jemand anschauen und mir helfen könnte.
Vielen Dank im vorraus.

Alex

In Deinem Beitrag befinden sich noch Fehler.
Bitte bearbeite die rot markierten Stellen und lösche diesen Text.

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

2

24.02.2004, 19:28

bitte bitte ein Win32 Application erstellen und keine Win32 Console Application :) Dann funzt das nämlich auch ;)

Anonymous

unregistriert

3

24.02.2004, 19:32

AUTSCH !!
Das tut echt weh....hätte mal nen neues Projekt erstellen sollen :).
Recht herzlichen Dank für die Info, hat sofort geklappt ;).

Anonymous

unregistriert

4

06.03.2004, 12:40

Sorry, wenn ich mich nochmal melden und nerven muss...hab aber nun das nächste Problem und diesmal liegt es nicht an der fehlenden Win32-Anwendung ;).

Wenn ich das 2. Beispielprogramm (die "komplette Direct3D-Anwendung", Kapitel 2.4.7, S.111,f) zum laufen kriegen möchte, egal ob ich das Programm selbst abtippe oder einfach schon das vorliegende Programm aus dem TriBase Ordner kompilieren möchte, bekomme ich meistens 7-11 errors. Ich hab eigentlich soweit alles eingebunden und berücksichtigt.
Komme aber einfach nicht weiter. Folgende errors werden mir angezeigt:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
Linking...
Abzählung.obj : error LNK2001: unresolved external symbol "enum tbResult __cdecl ExitDirect3D(void)" (?ExitDirect3D@@YA?AW4tbResult@@XZ)
Abzählung.obj : error LNK2001: unresolved external symbol "enum tbResult __cdecl ExitWindow(void)" (?ExitWindow@@YA?AW4tbResult@@XZ)
Abzählung.obj : error LNK2001: unresolved external symbol "enum tbResult __cdecl InitDirect3D(struct SDirect3DParameters *,struct HWND__ *)" (?InitDirect3D@@YA?AW4tbResult@@PAUSDirect3DParameters@@PAUHWND__@@@Z)
Abzählung.obj : error LNK2001: unresolved external symbol "struct HWND__ * g_hWindow" (?g_hWindow@@3PAUHWND__@@A)
Abzählung.obj : error LNK2001: unresolved external symbol "enum tbResult __cdecl InitWindow(int,int,char *,struct HICON__ *)" (?InitWindow@@YA?AW4tbResult@@HHPADPAUHICON__@@@Z)
Abzählung.obj : error LNK2001: unresolved external symbol "enum tbResult __cdecl GetDirect3DParameters(struct SDirect3DParameters *)" (?GetDirect3DParameters@@YA?AW4tbResult@@PAUSDirect3DParameters@@@Z)
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Abzählung.exe : fatal error LNK1120: 7 unresolved externals
Error executing link.exe.

Abzählung.exe - 8 error(s), 0 warning(s)


Wäre wirklich nett, wenn mir jemand helfen könnte, denn bevor ich nicht weiss wo die Fehler liegen und wieso das zum verrecken nicht laufen will, will ich im Buch auch nicht weitermachen.
Danke im voraus.
Alex

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

5

06.03.2004, 13:19

Sieht so aus, als ob die CPP-Dateien aus dem Ordner "Beispiele\Allgemeines" nicht im Projekt drin sind.

Anonymous

unregistriert

6

06.03.2004, 13:39

Müssten sie aber eigentlich, sie werden doch in der Abzählung.CPP ganz am Anfang folgendermaßen eingebunden:

Quellcode

1
2
3
4
5
6
#include <Windows.h>
#include <TriBase.h>
#include "..\\..\\Allgemeines\\InitWindow.h"
#include "..\\..\\Allgemeines\\Direct3DEnum.h"
#include "..\\..\\Allgemeines\\InitDirect3D.h"
#include "Resource.h"


Oder muss noch etwas anderes eingebunden werden ?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

7

06.03.2004, 13:50

Ich meinte aber, dass die CPP-Dateien selbst auch im Projekt sein müssen!

Anonymous

unregistriert

8

06.03.2004, 14:20

Oh Scheisse du hast recht...ich hab in der Eile irgendwie an die Header Dateien gedacht. Sorry.

Also meinst du sicherlicher die InitWindow.CPP, Direct3DEnum.CPP und InitDirect3D.CPP ?
Aber wie kriege ich die CPP Dateien ins Projekt ?

unsigned int

Alter Hase

Beiträge: 512

Wohnort: Bonn

Beruf: Schüler; C#-Programmierer in einer kleinen Firma

  • Private Nachricht senden

9

06.03.2004, 16:07

mit rechtsklick aufs projekt und "vorhandenes element hinzufügen" - zumindest in .net isses so
"Tu es. Oder tu es nicht. Es gibt kein Versuchen."
StarWars

www.tron2d.de.vu

Anonymous

unregistriert

10

06.03.2004, 16:46

Danke habs gefunden.
Aber die Probleme werden dadurch nicht komplett gelöst. Jetzt wird das Programm zwar ohne Fehler und Warnungen kompiliert, jedoch gibts beim Ausführen eine dicke Fehlermeldung mit folgendem Inhalt:
" Die Anwendung konnte nicht gestartet werden, weil d3dx9d.dll nicht gefunden wurde. Neuinstallation oder Anwendung könnte das Problem beheben."

Normalerweise müsste diese DLL doch beim DXSDK dabei sein oder täusche ich mich ?

Werbeanzeige