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!

4voto

Vitality Punkte 19407

Im Januar 2014 wurde aus irgendwelchen Gründen .NET Framework 4.5.1 installiert, ich weiß nicht, ob durch die Installation von Software eines Drittanbieters oder durch ein automatisches Update.

Am 29. Januar habe ich eine Komponente installiert und erhalte seither die

LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt 

Nachricht. Damals habe ich das Problem gelöst, indem ich den inkrementellen Link vermieden habe.

Am 31. Januar habe ich eine weitere Komponente von .NET Framework 4.5.1 installiert und der Trick mit dem inkrementellen Link funktionierte nicht mehr. Ich habe dann das Visual Studio 2010 SP1 installiert, aber danach wurde das Problem:

Error   6   error LNK1104: cannot open file 'msvcrtd.lib'. 

Ich glaube, das SP1 hat meine Visual Studio 2010-Installation durcheinander gebracht.

Also habe ich .NET Framework 4.5.1 deinstalliert, .NET Framework 4.0 installiert und Visual Studio 2010 deinstalliert und dann neu installiert. Das hat bei mir funktioniert.

3voto

nerd Punkte 339

Wenn Sie trotz der Installation des Service Packs den Fehler erhalten, versuchen Sie, die Datei cvtres.exe im Verzeichnis C:\Program Dateien (x86) \Microsoft Visual Studio 10.0 \VC\bin Ordner. Das hat bei mir funktioniert.

1voto

manimino Punkte 1135

Die Neuinstallation von CMake hat bei mir funktioniert. Die neue Kopie von CMake hat herausgefunden, dass es Visual Studio 11 statt 10 verwenden sollte.

1voto

App Work Punkte 21411

Ich habe das Problem wie folgt gelöst:

  1. Geben Sie in einer Eingabeaufforderung msconfig ein und drücken Sie die Eingabetaste.
  2. Klicken Sie auf die Registerkarte Dienste.
  3. Suchen Sie nach "Application Experience" und setzen Sie ein Häkchen (d. h. aktivieren Sie diese Option).
  4. Klicken Sie auf OK. Und starten Sie neu, falls erforderlich.

So wird das Problem ewig bestehen bleiben. Bauen Sie Ihre C++-Projekte nach dem Zufallsprinzip und debuggen Sie sie ungestört.

1voto

Vijay Kumar Kanta Punkte 963

Ich habe das Windows SDK für die Win32-Kernprogrammierung verwendet und hatte aus "unbekannten" Gründen .NET 4.5 installiert. Ich habe das deinstalliert und 4.0 wie die vorherigen Antworten installiert und ja, es hat auch bei mir funktioniert.

Ich bin nur verblüfft, dass ich das nutzlose .NET-Framework für die Erstellung von Win32-Anwendungen mit dem SDK verwenden musste.

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