Wieso "unresolved external symbol"?
-
Moin.
Ich habe mir http://www.codeproject.com/dll/keyboardhook.asp heruntergeladen. Mein Ziel ist es (immer noch) einen Screenshot vom Desktop als JPG zu speichern, auch wenn mein Prog nicht im Vordergrund ist.
Nach vielen Versuchen hab ich die "hodll" so anpassen können, dass sie auf ALT+A und auf einen Klick der rechten Maustaste etwas ausführt.
Jetzt muss ich also "nur noch" den Desktop speichern. (Als BMP kann ich das übrigens; aber ich möchte es als JPG speichern.)
Deshalb habe ich mich wieder auf die Suche gemacht und http://www.codeguru.com/cpp/g-m/bitmap/capturing/article.php/c4915/ gefunden. Das Prog speichert mir durch einen Klick auf den "DeskTopToJpg"-Button den Desktop und zwar als JPG. Wunderbar. Genau das, was ich brauche.
Ich nehme also die Files aus dem WindowBitmap.zip-Archiv und kopiere sie in mein hodll-Verzeichnis.
Ich gucke mir die WindowBitmapDlg.cpp an und zwar "OnButtonDesktopJpg":
CBitmapFile obj; obj.SaveDesktopAsFile(DESKTOP_FILE_JPG, JPG_FILE);
Alles klar, das kommt dann wohl in meine Abfrage, ob ALT+A bzw. die rechte Maustaste gedrückt wurde. Soweit auch kein Problem.
Dann füge ich (wie es auch in der "WindowBitmapDlg.cpp" gemacht wurde) die Header-Files ein:
#include "WindowBitmap.h" #include "BitmapFile.h"
Dann lasse ich das Ganze kompilieren und bekomme:
**hodll error LNK2019: unresolved external symbol "public: __thiscall CBitmapFile::~CBitmapFile(void)" (??1CBitmapFile@@QAE@XZ) referenced in function...
hodll error LNK2019: unresolved external symbol "public: int __thiscall CBitmapFile::SaveDesktopAsFile(char *,int)" (?SaveDesktopAsFile@CBitmapFile@@QAEHPADH@Z) referenced in function...
hodll error LNK2019: unresolved external symbol "public: __thiscall CBitmapFile::CBitmapFile(void)" (??0CBitmapFile@@QAE@XZ) referenced in function...**
Was läuft da nun schief? Ich hab doch die Header-Files eingebunden und die Dateien kopiert. Was fehlt nun noch?
Danke für Hinweise.
mfg
-
Hast du die Dateien im Projekt hinzugefügt?
-
Ähm. Da ich nicht genau weiß, was du meinst, sage ich mal: nein.
Wie muss ich das denn machen?
mfg
-
Im VC hast du doch eine Dateiansicht.
Da macht mal rechte Maustaste auf das Projekt und da gibts "Dateien zu Projekt hinzufügen...".
Der Rest erklärt sich von selbst.Danach mach noch sicherheitshalber "Erstellen" - "Alles neu erstellen".
-
Ok, ich hab habe das Projekt "WindowBitmap" und sehe es auch im SolutionExplorer.
Aber funktionieren tut es trotzdem nicht. Ich bekomme immer noch die drei "unresolved external symbol"-Meldungen. (Ja, ich hab vorher auch "Clean hodll" gemacht.)
Was nun?
P.S.: Das Builden von "WindowBitmap" funktioniert; nur beim Builden von "hodll" bekomme ich die Meldungen. Ich habs auch mit "Dependency" versucht, dann bekomme ich aber noch mehr Fehlermeldungen.