Ich versuche, ein ActiveMQ-Beispiel http://activemq.apache.org/cms/example.html out of the Box unter Windows mit VS 2008 in einer 32-Bit-C++ - Konsole-Anwendung ausführen.Loading 3rd Party DLL schlägt mit Unhandled Exception zur Laufzeit (Log4CXX, ActiveMQ)
Das Projekt ist gebaut, aber wenn ich das Programm ausführen, bekomme ich die Ausnahme.
Unbehandelte Ausnahme bei 0x768b3e28 in xxxxxx.exe: Microsoft C++ Ausnahme: std :: length_error an Speicherplatz 0x0100f880 ..
ich genau die gleiche Ausnahme mit gleichen Adressen Speicher, wenn zu laufen versuchen, ein separates Projekt und mit einer anderen DLL von Drittanbietern (log4CXX).
Pfadeinstellungen
Die DLL-Datei in Windows/System32 ist sowie in Windows/SysWOW64.
Ich habe den Header-Dateipfad zu den Konfigurationseigenschaften> C/C++> Zusätzliche Include-Verzeichnisse hinzugefügt. In Linker> Input> Zusätzliche Abhängigkeiten habe ich ws2_32.lib libapr-1.lib activemq-cpp.lib. In Linker> Allgemein> Zusätzliche Bibliotheksverzeichnisse habe ich den Pfad zu Ordnern angegeben, in denen lib-Dateien vorhanden sind. Der Pfad zu den Lib- und Header-Dateien ist enthalten, und ich glaube, deshalb gibt es kein Problem beim Aufbau des Projekts.
Sie benötigen ** sowohl die .lib-Datei als auch die .dll-Datei an einem Ort, an dem das Programm sie finden kann. Unter Linux ist eine .so eine Kombination aus diesen, aber unter Windows sind es separate Dateien. –
ist also DLL ein Muss für das Ausführen des Programms? Will VC nicht zusammen mit meinem Projekt bauen, auf das ich mich beziehe. – Bokhari
Danke @BoPersson, es war eine wirklich dumme Frage. Ich fand die DLL und die Anwendung sollte jetzt funktionieren. – Bokhari