"Die Anwendung konnte nicht korrekt gestartet werden"



  • Moin!

    In Visual Studio 2010 habe ich mittels Qt-Plugin ein Qt-Projekt erzeugt und möchte neben Qt verschiedene andere Bibliotheken benutzen, insbesondere VTK (Visualization Toolkit). In den Projekteigenschaften habe ich unter VC++-Verzeichnisse - Bibliotheksverzeichnisse und unter Linker - Allgemein - Zusätzliche Bibliotheksverzeichnisse die Pfade angegeben, in der sich die entsprechenden DLLs und .lib-Dateien befinden. So weit, so gut.

    Wenn ich nun aber das Projekt aus Visual Studio starten möchte, erscheint die Fehlermeldung, dass das Programm nicht gestartet werden konnte, da diese und jene DLLs (QVTK.dll) nicht auf dem Computer gefunden werden konnte, obwohl sich die jeweiligen Dateien im oben angegebenen Verzeichnis befinden. Kopiere ich die DLLs jedoch direkt ins Projektverzeichnis, läuft alles.

    Ein weiteres Problem ist auch, dass das Programm mit den DLLs im Projektverzeichnis nur aus VS gestartet werden kann. Möchte ich die .exe direkt ausführen, bekomme ich die Fehlermeldung, dass die Anwendung nicht gestartet werden konnte... Ohne weitere Begründung.

    Ich hoffe ihr könnt mir weiterhelfen!

    Ich arbeite mit Windows 7 (64 Bit), das Problem bezieht sich auf x64/Release.


  • Mod

    Bibliotheken (Libs) sind was anderes als DLLs.
    Es gelten die DLL Suchpfade (siehe MSDN).

    I.A. solltest Du alle Deine benötigen DLLs mit der EXE ins Programmverzeichnis packen.

    Wenn die EXE alleine nicht startet, versuch es mal mit DEPENDS. Da kannst Du auch Tracen was die XE benötigt und wie weit sie beim laden kommt.

    Evtl. zeigt Dir DEPENDS auch gleich an was für DLLs nicht verfügbar sind.



  • Vielen Dank erstmal für die Hilfe!

    ok, eigentlich wollte ich vermeiden, dass im Programmverzeichnisse noch zig andere Dateien umherfliegen, sind nämlich leider nicht wenige. Werde dann wohl den DLL-Suchpfad erweitern.

    Musste natürlich erstmal googeln, was Depends ist 🙂 , klingt aber nützlich! Werde ich mal versuchen, danke.
    Allerdings verstehe ich noch nicht ganz, wieso sich das Programm dann aus VS starten lässt und die EXE alleine nicht?



  • "depends" ist vermutlich der falsche Suchbegriff: Dependency-Walker.

    Zum Problem kann ich aber leider nichts beitragen.


  • Mod

    Was ist daran gut, den DLL Suchpfad zu erweitern?
    Und was ist das Problem von weiteren DLLs im Programmverzeichnis. Der User sieht doch sowieso nichts davon. Nichtmal der Poweruser.

    Vor allem kannst Du den DLL Suchpfad erst setzen, wenn Deine EXE gestartet ist. Wenn also DLLs implizit gelinkt snd, dann müssen die zur Startzeit auch findbar sein.


Anmelden zum Antworten