29 Stimmen

Die Anwendung kann nicht gestartet werden, da die Konfiguration der Seitenleiste inkorrekt ist.

Nicht behandelte Ausnahme: System.IO.FileLoadException: Die Datei kann nicht geladen werden, oder die Assembly 'TheLibrary, Version=1.2.3905.36284, Culture=neutral, PublicKeyToken=1404827c3a8f2601' oder eine ihrer Abhängigkeiten. Die Anwendung konnte nicht gestartet werden, da die Konfiguration nebeneinander falsch ist. Bitte sehen Sie sich die Anwendungsereignisprotokoll für weitere Details. (Ausnahme von HRESULT: 0x800736B1) Dateiname: 'TheLibrary, Version=1.2.3905.36284, Culture=neutral, PublicKeyToken=1404827c3a8f2601' ---> System.Runtime.InteropServices.COMException (0x800736B1): Die Anwendung konnte nicht gestartet werden, weil ihre Konfiguration nebeneinander falsch ist. Bitte sehen Sie sich das Anwendungsereignisprotokoll für weitere Details. (Ausnahme von HRESULT: 0x800736B1)

Wenn ich das Ereignisprotokoll überprüfe, erhalte ich diesen Fehler.

Aktivierungskontextgenerierung fehlgeschlagen für "C:\Projekt\Debug\MyLibrary.dll". Abhängige Assembly Microsoft.VC90.DebugCRT, processorArchitecture="x86", publicKeyToken="1fc8b3b9a1e18e3b", type="win32", version="9.0.21022.8" konnten nicht gefunden werden. Verwenden Sie sxstrace.exe für eine detaillierte Diagnose.

Ich habe sxstrace verwendet, um den Fehler zu protokollieren, und hier ist das Ergebnis:

\================= Beginn der Aktivierungskontextgenerierung. Eingabeparameter: Flags = 0 ProcessorArchitecture = x86 CultureFallbacks = en-US;en Manifestpfad = C:\Windows\system32\cmd.exe AssemblyVerzeichnis = C:\Windows\system32\ Anwendungs Konfigurationsdatei = ----------------- INFO: Analysieren der Manifestdatei C:\Windows\system32\cmd.exe. INFO: Manifestdefinition Identität ist Microsoft.Windows.FileSystem.CMD, processorArchitecture="x86", type="win32", version="5.1.0.0". INFO: Aktivierungskontextgenerierung erfolgreich. Ende der Aktivierungskontextgenerierung.

\================= Beginn der Aktivierungskontextgenerierung. Eingabeparameter: Flags = 0 ProcessorArchitecture = x86 CultureFallbacks = en-US;en Manifestpfad = C:\Debug\TheLibrary.dll AssemblyVerzeichnis = C:\Debug\ Anwendungs Konfigurationsdatei = ----------------- INFO: Analysieren der Manifestdatei C:\Debug\TheLibrary.dll. INFO: Manifestdefinition Identität ist (null). INFO: Referenz: Microsoft.VC90.DebugCRT, processorArchitecture="x86", publicKeyToken="1fc8b3b9a1e18e3b", type="win32", version="9.0.21022.8" INFO: Auflösen der Referenz Microsoft.VC90.DebugCRT, processorArchitecture="x86", publicKeyToken="1fc8b3b9a1e18e3b", type="win32", version="9.0.21022.8". INFO: Auflösen der Referenz für ProcessorArchitecture x86. INFO: Auflösen der Referenz für Kultur Neutral. INFO: Anwenden der Bindungsrichtlinien. INFO: Keine Publisher-Richtlinie gefunden. INFO: Keine Bindungsrichtlinie-Umleitung gefunden. INFO: Beginn der Assembly-Proberunde. INFO: Assembly wurde nicht in WinSxS gefunden. INFO: Versuch, Manifest bei C:\Windows\assembly\GAC_32\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL zu sondieren. INFO: Versuch, Manifest bei C:\Debug\Microsoft.VC90.DebugCRT.DLL zu sondieren. INFO: Versuch, Manifest bei C:\Debug\Microsoft.VC90.DebugCRT.MANIFEST zu sondieren. INFO: Versuch, Manifest bei C:\Debug\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL zu sondieren. INFO: Versuch, Manifest bei C:\Debug\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST zu sondieren. INFO: Manifest für Kultur Neutral nicht gefunden. INFO: Ende der Assembly-Proberunde. ERROR: Kann Referenz Microsoft.VC90.DebugCRT, processorArchitecture="x86", publicKeyToken="1fc8b3b9a1e18e3b", type="win32", version="9.0.21022.8" nicht auflösen. ERROR: Aktivierungskontextgenerierung fehlgeschlagen. Ende der Aktivierungskontextgenerierung.

Kann Referenz Microsoft.VC90.DebugCRT,processorArchitecture=... nicht auflösen.

Irgendwelche Ideen?

0 Stimmen

Das Programm wurde mit VS 2008 erstellt und ich habe das Microsoft Visual C++ 2008 Redistributable Package (x86) installiert. Aber es hat immer noch nicht geholfen.

0 Stimmen

Für Nicht-Programmierer, die über Google hierher gelangen, kann dieser Fehler manchmal auftreten, wenn Sie ein Programm starten, bevor Windows mit dem Hochfahren fertig ist. Wenn Sie ein paar Sekunden warten und versuchen, das Programm erneut zu starten, funktioniert es normalerweise problemlos danach.

52voto

Fetchez la vache Punkte 4632

Wir hatten gerade den genau gleichen Fehler, aber die Ursache war so irreführend im Vergleich zum Fehler, dass es hoffentlich wert ist, hier hinzuzufügen, da es bei Google oben steht...

Der Fehler "Die Anwendung konnte nicht gestartet werden, da ihre Side-by-Side-Konfiguration inkorrekt ist" trat beim Starten eines Windows-Dienstes auf. In unserem Fall wurde dies durch die Dienstanwendungs-Konfigurationsdatei verursacht, bei der die XML-Datei ungültig war - jemand hatte sie manuell bearbeitet und ein zusätzliches schließendes Tag eingefügt. Durch die Änderung wurde die nicht im Geringsten damit zusammenhängende Fehlermeldung behoben.

Der schnellste Weg, um dies zu überprüfen, besteht darin, die XML-Datei in einen der vielen kostenlosen Online-XML-Validatoren im Web einzufügen.

3 Stimmen

Sie sind ein Lebensretter. Das war genau das Problem in unserem Fall.

4 Stimmen

Ich hätte niemals daran gedacht, die Konfigurationsdatei anzusehen, wenn nicht dafür gewesen wäre. Offenbar hatte ich einen falschen doppelten "<

3 Stimmen

Das war auch mein Fall: ungültige app.config-Datei

18voto

Hans Passant Punkte 894572

Abhängige Assembly Microsoft.VC90.DebugCRT,... konnte nicht gefunden werden

Ja, das kann nur auf einem Rechner gefunden werden, auf dem Visual Studio installiert ist. Der DebugCRT ist nicht distribuierbar. Und es macht keinen Sinn, C oder C++-Code zu schreiben und den Debug-Build dafür zu verteilen, er ist viel langsamer.

Verteilen Sie die Release-Build-Version Ihrer DLL. Und die VC++-Bibliotheken, eines der Kontrollkästchen in den Voraussetzungen eines Setup-Projekts.

0 Stimmen

Ich habe den Quellcode der Assembly nicht, gibt es eine Möglichkeit, Microsoft.VC90.DebugCRT ohne die Installation von Visual Studio 2008 zu bekommen?

0 Stimmen

"Es macht keinen Sinn, C- oder C++-Code zu schreiben und das Debug-Build dafür bereitzustellen" - ich stimme diesem Punkt entschieden nicht zu, es ergibt durchaus Sinn, wenn man zum Beispiel auf VMs auf Ihren Maschinen bereitstellt.

1 Stimmen

Seufzer, befolgen Sie die MSDN-Richtlinien zur Einrichtung einer Remote-Debugging-Sitzung. Das hat nichts mit Bereitstellung zu tun.

12voto

Jason Kester Punkte 5843

Dies ist als C# markiert, also werde ich die C#-Antwort geben: Etwas hat deine projectname.exe.config-Datei durcheinandergebracht.

Öffne sie in einem Texteditor und wahrscheinlich wird etwas nicht ordnungsgemäß geschlossen sein oder es werden ein paar Müllzeichen am Ende stehen. Du kannst später herausfinden, warum das passiert ist. Aber für jetzt, repariere es einfach und du wirst in der Lage sein zu starten.

0 Stimmen

Ich musste die Option "Alle Zeichen anzeigen" in Notepad++ aktivieren, um diese Müllzeichen am Ende der .config-Datei zu sehen.

0 Stimmen

Hatte ein ähnliches Problem hier, stellte fest, dass ich die .config-Datei manuell bearbeitet hatte, um einen Trace-Eintrag zu ändern, und dort einen Abschlusskommentar gelassen hatte.

6voto

praveen m.p Punkte 61

Sie können einfach die Manifestdatei aus dem Anwendungspfad löschen, dann wird die ausführbare Datei ordnungsgemäß funktionieren,

2 Stimmen

In meinem Fall hatte ich einen Fehler in meiner Manifest-Datei, den ich bearbeitet habe und mein Problem gelöst hat, vielen Dank für deinen Hinweis.

0 Stimmen

Warum würdest du das Manifest löschen, anstatt die eigentliche Ursache anzusprechen? Besonders wenn du diese Datei benötigst und / oder das Problem nach der manuellen Bearbeitung auftritt.

3voto

Ismail Gunes Punkte 548

Für eine echte Überprüfung, ob Sie Windows 7 verwenden (muss für 8 und Vista gleich sein)

Öffnen Sie im Kontrollfeld das Systemverwaltungs-Tool und wählen Sie den Ereignisbetrachter

Klicken Sie auf Windows-Protokolle-> Anwendung

Finden Sie Ihr Fehlerprotokoll unter der Spalte Seitenleiste

Notieren Sie die Zeilennummer, an der der Fehler auftritt.

Dann mit einem Editor wie Notepad öffnen Sie yourfilename.exe.manifest

Löschen Sie dann die Zeilen von Zeilennummer und speichern Sie die Datei

Ihr Problem ist gelöst.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X