540 Stimmen

Fehler 'LINK : fataler Fehler LNK1123: Fehler bei der Konvertierung nach COFF: Datei ungültig oder beschädigt' nach der Installation von Visual Studio 2012 Release Preview

Ich habe Visual Studio 2012 Release Preview installiert, und es scheint in Ordnung zu sein, aber jetzt, wenn ich versuche, Visual Studio 2010 zum Kompilieren von C++-Projekten zu verwenden, erhalte ich die folgende Fehlermeldung:

LINK : fataler Fehler LNK1123: Fehler bei der Konvertierung nach COFF: Datei ungültig oder beschädigt

Ich bin mir nicht 100%ig sicher, aber es scheint sich um Projekte zu handeln, die .rc (Ressourcen-)Dateien enthalten.

Ich habe versucht, Visual Studio 2010 über die Funktion "Hinzufügen/Entfernen" zu reparieren und neu zu starten, aber das hat keine Wirkung.

Ich erhalte auch den gleichen Fehler, wenn ich Visual Studio 2012 RC zum Kompilieren der C++-Projekte verwende, wenn ich das Visual Studio 2010-Toolset verwenden soll. Ein Upgrade auf das Visual Studio 2011-Toolset behebt das Problem (aber natürlich möchte ich dies nicht für Produktionscode tun).

Update: Ich habe Visual Studio 2012 deinstalliert neu gebootet, und das Problem besteht immer noch! Hilfe!

15voto

Alon Samuel Punkte 358

Es ist wegen der .NET Framework 4.5 ersetzt das .NET Framework 4.0. Ich habe Visual Studio 2010 mehrmals deinstalliert, ohne Erfolg. Als ich .NET Framework 4.5 entfernte und Visual Studio 2010 neu installierte, ging alles gut.

Siehe Deinstallieren Sie Visual Studio 11 vollständig und führen Sie eine Neuinstallation durch. .

14voto

Richard Peck Punkte 74626

Wenn Sie x64 verwenden, Hier ist eine Ressource, die helfen wird :

Dies ist darauf zurückzuführen, dass Microsoft .NET 4.5 nicht mit Visual C++ 10 kompatibel ist. Die Abhilfe besteht darin, sicherzustellen, dass Sie die .NET-Version von cvtres.exe und nicht die Visual C++-Version ausführen. Dazu habe ich die Visual C++-Versionen dieser Dateien umbenannt und die .NET-Versionen an ihre Stelle kopiert.

1. C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe
2. C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\cvtres.exe

1. C:\windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe
2. C:\windows\Microsoft.NET\Framework64\v4.0.30319\cvtres.exe

14voto

FractalSpace Punkte 5133

Bei mir hat die Einstellung "Manifest generieren" auf "Nein" das Problem behoben. (Auch mit /INCREMENTAL:NO behoben)

13voto

Orion Edwards Punkte 117361

Ich löste dieses Problem schließlich durch eine vollständige Deinstallation von VS2012 RC, gefolgt von einer vollständigen Deinstallation von VS2010, dann eine Neuinstallation von VS2010 von Grund auf.

Es hat ewig gedauert, aber jetzt kann ich wieder C++-Projekte in VS2010 kompilieren.

11voto

Caterpillar Punkte 599

Das Problem wurde bei mir auf magische Weise gelöst, indem ich die .NET 4,5, und ersetzt sie durch .NET 4.0 . Ich musste dann Visual Studio 2010 reparieren, da es irgendwie beschädigt wurde.

Ich hatte zuvor Visual Studio 2012 installiert und dann deinstalliert, was möglicherweise mit dem Problem zusammenhängt.

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