Side by Side configuration information for Programm.exe contains errors
-
Hallo
ich habe leider ein grosses Problem. Ich habe kürzlich Visual Studio 2005 installiert.(Version 8.0.50727.762) Das Projekt wurde unter der Version 8.0.50727.42(bzw. darunter funktionierte alles super) entwickelt. Die Setup-Exe wird mit ISS (Inno Setup Compiler 5.2.3) zusammengebaut. Auf meinem Rechner lässt es sich wunderbar installieren und es funktioniert perfekt. Bei sämtlichen anderen Rechner gibt es eine Fehlermeldung: "DieseAnwendung konnte nicht gestartet werden, weil die Anwendungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren. (14001)"
Mit Hilfe von Dependency Walker fiel mir auf, dass bei meinem Rechner die MSVCR80.DLL per Side by Side components aufgeführt ist und bei dem es nicht funktioniert nicht.(Da wird die Dll unter dem installationsverzeichnis geladen.)
die Manifest dateien habe ich überprüft und sie scheint alles in Ordnung zusein. (Sie war identisch mit der hier im Forum aufgelistete dateien.)
und wenn ich das Projekt mit dem anderen Rechner baue mit dem selben voraussetzungen(manifest/dlls usw.) lässt sich es überall installieren und starten.
Weisst jemend die Lösung ?
Gruss
Postbote
-
Welche DLLs/EXE/manifest Dateien hast Du denn?
Was steht da genau drin?
Was sagt das Ereignis-Protokoll?Siehe auch:
http://blog.kalmbach-software.de/2008/05/03/howto-deploy-vc2008-apps-without-installing-vcredist_x86exe/
-
Oder siehe auch:
http://www.codeproject.com/KB/cpp/PrivateAssemblyProjects.aspx
-
Vielen Dank für die Links

Leider löst das nicht mein Problem.
anwendungs.exe.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> </dependentAssembly> </dependency> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> </dependentAssembly> </dependency> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> </dependentAssembly> </dependency> </assembly>und warum er MS.VC80.DEbugCRT 2x mit verschiedene Versionen immer wieder reinschreibt, ist mir auch ein Rätsel

Ereignisprotokoll: Eventkennung: 59 Side by Side....
"Generate Acrivation Context ist für blabla.exe fehlgeschlagen. Referenzfehlermeldung: Der Vorgang wurde erfolgreich beendet. "ich hoffe ihr könnt was daraus machen

Gruss
Postbote
-
Du hast vermutlich eine LIB, die mit det RTM Version kompiliert wurde und nicht mit SP1.
Zudem hast Du mit Sicherheit Libraries in Debug und Release Version gemischt. Das sollte auch nicht sein!
-
das kann sehr gut sein, bzw. da kann ich nicht mit der Hand dafür ins Feuer legen, ob es sauber getrennt wurde. Gibt es ein Expertentrick, wie man die libs zwischen release und debug auseinanderhalten kann? Oder wie kann ich die "böse" lib lokalisieren?
-
In den Linker Settings die Ausgabe auf "/Verbose" setzen...
Ansonsten als Trick:
Debug-LIBs immer ein "d" an den Namen anhängen...
-
hmmm irgendwie war ich damit überfordert

habe die radikal Lösung genommen und Visual Studio neu installiert ohne SP1 und die Projektdateien vom anderen Rechner genommen. Zwar nicht ganz sauber, aber es funktioniert fürs erste

Trotzdem vielen Dank für eure Hilfe (bin wenigstens einwenig schlauer geworden)
