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

07.06.2003, 18:39

Erstellen d. IDirect3D9-Schnittstelle scheitert (Kap 2.4.1)

Hi Leute,
habe VC++6, Header- und Lib-Dateien sind eingebunden.
Beim linken erscheint als Fehler:
"error LNK2001: Nichtaufgeloestes externes Symbol _Direct3DCreate9@4"

Was so viel heißt wie, fehlender Funktionsrumpf.
Frage, wo finde ich diesen?

mfg

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

2

07.06.2003, 19:35

anscheinend ist die d3d9.lib nicht gelinkt, denn sonst käme der fehler net

Anonymous

unregistriert

3

08.06.2003, 14:02

Stimmt das war es. Mußte die Datei allerdings per Hand zum Projekt hinzufügen. Ist das so richtig?

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

4

08.06.2003, 18:57

Allerdings: ist recht easy:

popeliger Psoidocode:

Quellcode

1
2
3
4
5
6
7
// I N C L U D E S //////////////////////////////////////////////////////////////
#include <d3d9.h>
#include <d3dx9.h>

// L I N K E R ///////////////////////////////////////////////////////////////////
#pragma comment(lib, "d3d9.lib") 
#pragma comment(lib, "d3dx9.lib")


wenn du sowas direkt am anfang schreibst, kann dir son "blöder" fehler nicht mehr unterkommen.

Naja stimmt zwar net zu 100% aber bei DX zu 100 :D ;D

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

5

08.06.2003, 19:18

Was tut das #pragma comment(lib, "d3d9.lib") eigentlich? Veranlasst es den Linker, diese Datei zu linken, oder gibt es eine Warnung aus, wenn die Datei nicht in den Projekteinstellungen eingetragen ist? Ich meine, weil es ja nur "comment" heißt...

Anonymous

unregistriert

6

08.06.2003, 19:39

es veranlasst den linker, die datei zu linken

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

7

08.06.2003, 22:56

@David:
naund :) Es veranlasst die Datei zu linken ;) Wenn man mit linker-scripts mal gearbeitet hat, wird man #pragma lieben :D

Okay... außer beim Manuellen aufrufen von Con und Destructoren per Linker-script.

Hab aber was für dich:
http://gcc.gnu.org/onlinedocs/gcc-3.0.1/cpp_13.html
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_predir_pragma_directives.asp
http://www.informatik.uni-halle.de/lehre/c/c_pragma.html

http://www.c-plusplus.de/ubb/cgi-bin/ultimatebb.cgi?ubb=get_topic&f=15&t=008939

Werbeanzeige