2009-09-14 9 views
5

Ich habe eine Baugruppe mit den eingebetteten folgenden manifestieren:Side-by-Side-Konfigurationsfehler (Microsoft.VC80.CRT v8.0.50608.0)

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 
</assembly> 

Auf einer meiner Maschinen diese Anordnung funktioniert nicht (Die Assembly kann nicht geladen werden). Öffnen dies in Dependency Walker gibt mir die folgende Fehlermeldung:

Error: The Side-by-Side configuration information for "SomeAssembly.dll" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001). 

Die identische Anordnung auf einer anderen Maschine gut funktioniert, und ich bekomme keinen Fehler mit Dependency Walker.

Soweit ich das Problem ausarbeiten kann, ist aufgrund der ersten Maschine fehlt eine Abhängigkeit von irgendeiner Art (zum Beispiel die MSVCR redistributable), aber ich habe bereits überprüft und die Microsoft Visual C++ 2005 Redistributable ist gut installiert beide Maschinen.

Wie gehe ich herauszufinden, was die fehlende Abhängigkeit ist?

Das einzige, was ich bemerkt habe ist, dass das WinSxS Verzeichnis auf der Arbeitsmaschine hat einen zusätzlichen Eintrag:

x86_Microsoft.VC80.ATL_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_473666fd 
+0

Gibt das Systemereignisprotokoll mehr Details darüber, was falsch gelaufen ist? – karx11erx

Antwort

2

Sortiert!

Jemand hat mich freundlicherweise darauf hingewiesen, dass die in Dependency Walker erwähnte "SomeAssembly.dll" tatsächlich eine andere DLL war als die, die ich in Dependency Walker geöffnet habe! (Whoops!)

Mit Blick auf das Manifest für diese Baugruppe kann ich sehen, dass das Problem aufgrund der Tatsache, dass Microsoft.VC80.CRT v8.0.50727.4053 Ziel ist, aber nicht auf dieser Maschine vorhanden ist. (Installiert über ein Sicherheitsupdate).

+0

Können Sie den Link senden, von dem Sie das Update heruntergeladen haben? Welches Sicherheitsupdate? –

+0

Ich glaube, das Update ist KB973923 - es gibt weitere Informationen hier http://support.microsoft.com/kb/973923, aber Sie sollten es durch Windows-Update erhalten. – Justin

2

Nachdem mit dem gleichen Problem zu kämpfen, ich habe bemerkt, dass das angewandte Updates für die Entwicklung von Visual Studio-Installation möglicherweise einige Zielcomputer Updates adressiert:

Visual Studio Updates

Zum Beispiel des markierte Update über Adressen diese spezifische Frage .

2

Instaed der Weiterleitung auf Seite Ich würde vorschlagen, dass Sie nicht die "Manifest-Datei" in Ihrer Baugruppe enthalten. Insbesondere, weil Sie nicht sicher sein können, dass der PC, auf dem Sie Ihre Software installieren, auf die in Ihrem Manifest enthaltene Version aktualisiert wird.

Sie können es deaktivieren, indem Sie die Projekteigenschaft "Linker \ Manifest File \ Generate Manifest" auf "No" setzen.

Ich hoffe, das könnte helfen. Viel Glück

Verwandte Themen