kleines prob mit dll
-
das scheint nix zu ändern
wieder ähnliche Fehlermeldung:
prog.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) bool __cdecl MSGBOX(void)" (__imp_?MSGBOX@@YA_NXZ)" in Funktion "_wmain".
C:\Dokumente und Einstellungen\as\Eigene Dateien\Visual Studio 2005\Projects\DLL-Test\prog\Debug\prog.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.
-
In dem Modul in dem Du die DLL benutzen willsst musst Du
__declspec( dllimport )verwenden! Und nicht nochmal die Funktion als extportiert angeben.
-
in dem prog dass die DLL benutzen soll, habe ich die Funktion folgendermaßen bekannt gemacht:
__declspec (dllimport) bool MSGBOX();wenn das so richtig ist, liegt der fehler da nicht
-
Hast du auch die zur DLL passende Lib eingebunden?
-
noha_391 schrieb:
in dem prog dass die DLL benutzen soll, habe ich die Funktion folgendermaßen bekannt gemacht:
__declspec (dllimport) bool MSGBOX();Da fehlt dann aber noch ein "extern "C"".
-
ist es auch nicht, bekomm trotzdem die Fehlermeldung:
prog.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__MSGBOX" in Funktion "_wmain".
C:\Dokumente und Einstellungen\as\Eigene Dateien\Visual Studio 2005\Projects\DLL-Test\prog\Debug\prog.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.
-
Dann Lege mal dieses Mini-Projekt irgendwo ab, damit man sich das mal ansehen kann.
Schau mal mit DEPENDS.EXE in die DLL hinein damit Du siehst welche Signatur die Funktion hat.
-
werde es morgen mal zum angucken bereitstellen....
was ist DEPENDS ?
-
Ein Tool mit dem man die Entry-Points von DLLs ansehen, kann, bzw. welche externen DLLs von einem Moudl verwendet werden.
Gehört als Tool zum Visual Studio! Oder auch hier: http://dependencywalker.com/
-
hier das projekt:
http://rapidshare.com/files/131114709/prog.rar.html
http://rapidshare.com/files/131114710/Dll.rar.htmldepends sagt erkennt schonaml die funktion die sich dort befindet
aber ich bekomm 2 Warnungen vom Programm ( mein englisch ist nicht so gut aber ich glaube mal, dass das nix mit meinem Problem zu tun hat)Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.
-
Argh...
Ist Dir eigentlich nicht klar, dass Du auch die DLL.LIB irgendwo in dem PROG-Projekt hinterlegen musst. Wie soll den PROG.SLN wissen wo die DLL.LIB liegt.
Du hast nur angegeben suche sie dort....
Am einfachsten geht, dass indem Du in der Proj-Solution die DLL:vcproj einfügst und eine Abhängigkeit zwischen Prog und Dll herstellst.
-
ich habe die lib in das Verzeichnis Dll und debug gepackt, so dass beim kompilieren darauf zugegriffen werden kann...
( sonst bekäm ich doch die Meldung dass die Datei nicht gefunden werden konnte... )
-
Ich habe einfach nur das DLL Projekt eingefügt und das wars...
-
was hast du denn genau gemacht ? bzw wie hast du es gemacht ?
-
Habe ich doch geschrieben: In die Solution der EXE habe ich das DLL Projekt eingefügtund die Projekt Abhängigkeiten gesetzt.
-
Wenn die DLL nicht im selben Verzeichnis wie das Programm liegt, musst du dem Linker das Verzeichnis hinzufügen, bei Code::Blocks heißt der Tab Search directories.
-
aber die dll liegt doch im gleichen Verzeichnis wie das Programm, und auch die lib, da ich diese dorthin kopiert habe...