CGridCtrl

  • #1
P

Paulchen29

Mitglied
Themenersteller
Dabei seit
04.03.2006
Beiträge
8
Reaktionspunkte
0
Hallo,

versuche gerade das CGridCtrl von CodeGuru in mein Visual C++ 6.0 Projekt einzubinden. Habe dazu auch schon ein Thema erstellt bei dem mir auch schon viel geholfen wurde. Zum nachlesen: http://www.wintotal-forum.de/index.php/topic,109132.0.html

Habe alles so gemacht, wie es mir beschrieben wurde. Glaube ich zumindest!  :)

Jetzt bekomme ich aber die mir unverständliche Fehlermeldung:

Code:
ini.obj : error LNK2001: unresolved external symbol public: virtual __thiscall
CGridCtrl::~CGridCtrl(void) (??1CGridCtrl@@UAE@XZ)
iniDlg.obj : error LNK2001: unresolved external symbol public: virtual __thiscall CGridCtrl::~CGridCtrl(void) (??1CGridCtrl@@UAE@XZ)
iniDlg.obj : error LNK2001: unresolved external symbol public: __thiscall CGridCtrl::CGridCtrl(int,int,int,int) (??0CGridCtrl@@QAE@HHHH@Z)

Weiss jemand damit was anzufangen? Das einzigste was ich unter GOOGLE zu dieser Meldung gefunden habe, war immer: Es fehlt eine Libary.  Aber es gibt keine Libary, die ich einbinden könnte!

Danke für Eure Hilfe

P.S.: Sorry, wenn ich deswegen einen neuen Thread anfange, aber ich denke Ihr wisst ja selber wie das ist, wenn ein Thread über einen Monat gelegen hat, dann liest keiner mehr, das was neu hinzugekommen ist.
 
  • #2
Hmm ... der Linker findet den Konstruktor und den Destruktor der Klasse CGridCtrl nicht in der Objektdatei.
Sind alle nötigen *.cpp-Dateien ins Projekt eingebunden? Sicher ja, denn sonst gäbe es wahrscheinlich mehr Fehler beim Linken. Hast Du das Demoprogramm mal erzeugt?
 
  • #3
Also jetzt muss ich Dir mal vielen vielen Dank sagen!

Super es läuft! Habe die Klassen nicht eingebunden. Doof eigentlich, aber ich dachte er holt sich die aus der Header. Könnt Dich umarmen!   ;D

Vielen Dank nochmal!
 
  • #4
aber ich dachte er holt sich die aus der Header.

Das macht der Compiler so. Darum ist es ihm auch wurscht, ob eine Funktion bloß in der Klassendefinition vorhanden oder wirklich implementiert ist. Er kompiliert eben alles, was er an Code sieht, in Objektdateien.
Der Linker, der anschließend Deine exe (oder was auch immer) zusammenbauen will, guckt dann aber dumm aus der Wäsche, wenn eine Funktion, die irgendwo benötigt wird, in den Objektdateien gar nicht existiert.
Du hast sicher einen Minimaltest geschrieben; ansonsten hätte es für jede aufgerufene Methode von CGridCtrl einen solchen Fehler gegeben. Bei Dir wird nur eine Instanz der Klasse erzeugt und wieder gelöscht, darum müssen zumindest Konstruktor und Destruktor auch reell vorhanden sein, wenn sie deklariert wurden.
 
Thema:

CGridCtrl

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.836
Beiträge
707.957
Mitglieder
51.488
Neuestes Mitglied
elkhse
Oben