dll probleme mit faq
-
hallo zusammen,
ich hab mir den code aus der faq rauskopiert und in ein bestehendes objekt eingefügt. beim compilieren bekomm ich aber die meldung
[Linker Fehler] Unresolved external 'RemoveHook' referenced from ...\SOURCE\MAINFRAME.OBJ
[Linker Fehler] Unresolved external 'SetHook' referenced from ...\SOURCE\MAINFRAME.OBJhier ist der link zum faq-eintrag:
http://www.c-plusplus.net/forum/viewtopic.php?t=39145kann mir jemand verraten was ich vergessen habe.

danke
-
ich hab die dll dem projekt hinzugefügt, muss ich noch etwas machen?
-
Hast du die DLL auch kompiliert? Wenn ich mich recht erinnere, wird die LIB des Dll-Projektes dem Projekt hinzugefügt, nicht die Dll selbst. (Ganz sicher bin ich mir aber nicht)
-
unresolved external weist aber eher auf eine fehlende Header-Datei hin...
-
Joe_M. schrieb:
unresolved external weist aber eher auf eine fehlende Header-Datei hin...
In diesem Fall gibt es keine Headerdatei seitens der DLL. Daher kann auch keine fehlen.

-
danke für die hilfe. ich hab nicht die lib datei eingebunden.
jetzt läuft zwar das programm, aber das was es machen sollte, nämlich alle keyboard eingaben in einer liste auszugeben, tut es nicht. kann man das ganze irgendwie debuggen?
-
Bis zu einem gewissen Grad kann man auch debuggen, allerdings nicht in die DLL hinein.
-
mattias schrieb:
kann man das ganze irgendwie debuggen?
Du hast doch wahrscheinlich ein Projekt für die DLL und ein Projekt, in dem Du die DLL verwendest.
Wenn Du die DLL debuggen willst, musst Du unter Start|Parameter Reiter Lokal Dein anderes Projekt
(genauer gesagt die Exe) als Host-Anwendung auswählen.
Wenn Du zwei Instanzen des BCB gestartet hast, solltest Du sogar beide Projekte parallel debuggen können.
Dabei musst Du natürlich zuerst das DLL-Projekt und dann das eigentliche Anwendungsprojekt starten.Gruß,
Alexander
-
Wenn man beide Projekte in einer Projektgruppe zusammen hat, benötigt man nicht einmal zwei Instanzen des BCB.
Man kann problemlos in eine DLL debuggen, einfach aus dem aufrufenden Programm heraus.
Beide Projekte sollten dazu natürlich im BCB geöffnet sein.