Durch Visual Studio erzeugte exe läuft nicht auf Rechner ohne VS2005
-
Hallo,
ich habe in meiner Projektmappe eine Konsolenanwendung und mehrere Projekte die DLLs erzeugen. Auf diese Dlls wird aus der Konsolenanwendung hereua zugegriffen.
Starte ich nun auf einem Rechner ohne VS2005 die exe der Kosolenanwendung, dann kann diese gar nicht gestartet werden. Es kommt folgende Fehlermeldung:
Diese konnte nicht nicht gestartet werden weil die Anwendungskonfiguration nicht korrekt ist. Zur Problembehebung sollten sie die Anwendung neu installieren.
Danke.
-
Dir fehlen DLLs.
2 moegliche Ursachen:
du hast eine Debug Version erstellt. Einfache Loesung: eine Release Version erstellen.
dem Zielrechner fehlt das Microsoft Visual C++ 2005 Redistributable Package (x86).
-
Entweder:
- Statisch linken:
http://blog.kalmbach-software.de/de/2008/03/05/wie-man-statisch-gegen-die-c-runtime-crt-linkt/- vc_redist installieren
- .NET installieren, wenn nötig:
http://blog.kalmbach-software.de/de/2008/03/05/wie-man-statisch-gegen-die-c-runtime-crt-linkt/
-
Danke,
habe es wie in dem Film gemacht.
Beim Rebuild als Release kommt unter anderem folgender Linkerfehler:
Error 109 error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj) MSVCRTD.lib
Wo kommt der her?
Ich benutze im Code irgendwann die typeinfo.h.
Danke.
-
Du hast vermutlich noch irgendwelche LIBs dazugelinkt, die die DLL version der CRT voraussetzen... übersetze also auch alle LIBS mit diesen Einstellungen!
-
Danke erstmal für die hilfreichen Antworten.
Ich habe mich nun dazu entschlossen, das Microsoft Visual C++ 2005 Redistributable Package (x86) zu installieren. Damit hat es toll funktioniert. Ich werde es aber auch mal probieren, alle eingebundenen LIBs mit den veränderten Einstellungen zu übersetzen, denn das habe ich nicht gemacht.