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

Taggert

Frischling

  • »Taggert« ist der Autor dieses Themas

Beiträge: 9

Beruf: Student

  • Private Nachricht senden

1

24.02.2005, 15:13

Programmbeispiel1 will sich nicht Linken lassen

Hallo,
ich bin eigentlich Java-Programmierer und habe noch das eine oder andere kleine Problem mit den Codebeispielen im Buch. Nachdem man mir hier wirklich sehr nett un geduldig geholfen hat was die Probleme mit VC++6 und dem SDK angeht, hoffe ich noch einmal die Geduld derer strapazieren zu können, die sich besser mit der Windowsprogrammierung und VC++ auskennen.
Nachdem ich nun das kleine Programm, das ein Fenster erstellt kompelieren konnte (die Freude war groß) dachte ich, dass ich am Ziel meiner Bemühungen angekommen sei. Jedoch gibt es in der C++ Welt ja noch den Linker, und der hat ein paar Fehlermeldungen rausgehauen, mit denen ich mal gar nichts anfangen kann. Wenn mir jemand helfen könnte wäre ich sehr dankbar.
Also - was will mir der Linker sagen und wie Löse ich das Problem:

C-/C++-Quelltext

1
2
3
4
5
6
7
 Linker-Vorgang läuft...
Test1.obj : error LNK2001: Nichtaufgeloestes externes Symbol "enum tbResult __cdecl ExitWindow(void)" (?ExitWindow@@YA?AW4tbResult@@XZ)
Test1.obj : error LNK2001: Nichtaufgeloestes externes Symbol "enum tbResult __cdecl InitWindow(int,int,char *,struct HICON__ *)" (?InitWindow@@YA?AW4tbResult@@HHPADPAUHICON__@@@Z)
Debug/Spiele.exe : fatal error LNK1120: 2 unaufgeloeste externe Verweise
Fehler beim Ausführen von link.exe.

Spiele.exe - 3 Fehler, 0 Warnung(en)


Gruß Taggert

Anonymous

unregistriert

2

24.02.2005, 17:57

Ich hab in einem früheren Beitrag etwas für dich gefunden, vielleicht hilft es dir:
Folgende zwei Beiträge stammen von Zipfiklatscher vom 18 Februar!!!

Fehlermeldung:
Fenster.obj : error LNK2001: Nichtaufgeloestes externes Symbol "enum tbResult __cdecl ExitWindow(void)" (?ExitWindow@@YA?AW4tbResult@@XZ)
Fenster.obj : error LNK2001: Nichtaufgeloestes externes Symbol "enum tbResult __cdecl InitWindow(int,int,char *,struct HICON__ *)" (?InitWindow@@YA?AW4tbResult@@HHPADPAUHICON__@@@Z)
Debug/Fenster.exe : fatal error LNK1120: 2 unaufgeloeste externe Verweise

Quellcode (Listing 2.55):
Code (C++):
#include <TriBase.h>
#include "..\\..\\Allgemeines\\InitWindow.h"
#include "..\\resource.h"

tbResult Render(float fNumSecPassed)
{
return TB_OK;
}

tbResult Move(float fNumSecPassed)
{
return TB_OK;
}


int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, char* pcCmdLine, int nShowCmd )
{
tbInit();

InitWindow(640,480,"Beispielprogramm Nr. 1: Fenster",LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON1)));

// Nachrichtenschleife
tbDoMessageLoop(Render,Move);

ExitWindow();

tbExit();

return 0;

}


Die Datei TriBaseD.lib wurde angegeben, alle Verzeichnise der Libs und Includes wurde angegeben, die datei FENSTER.RC wurde dem Projekt hinzugefügt und die #include dateien sind in den richtigen ordnern.
---------------------------------------------------------
Lösung:
ok also nachdem ich die InitWindow.h und InitWindow.cpp dem projekt hinzugefügt hab gehts jetzt...

3

24.02.2005, 18:34

Ist das eines der Beispielprogramme? Die sollten funzen, guck mal ob die gehen.

4

24.02.2005, 19:34

jo taggert, du musst unter Projekt --> Dem Projekt hinzufuegen --> Datei noch die InitWindow.cpp und InitWindow.h hinzufuegen, dann gehts. darin sind naemlich die beiden funktionen enthalten.

Werbeanzeige