Error LNK1123: error durante la conversión a COFF: archivo no válido o dañado

Error LNK1123: error durante la conversión a COFF: archivo no válido o dañado

Visual Studio LogoDespués de la instalación del Framework .NET 4.5 de Microsoft, un proyecto en C++ me da el error “error LNK1123: error durante la conversión a COFF: archivo no válido o dañado” motivado por el ejecutable CVTRES.EXE.

En muchas webs te aportan la solución que propone MSDN aquí, que se basa en hacer los siguientes pasos (a mi no me solucionó nada):

  • Aplique todos los service packs y actualizaciones para su versión de Visual Studio. Esto es especialmente importante para Visual Studio 2010.
  • Intente compilar con la vinculación incremental deshabilitada. En la barra de menús, seleccione Proyecto, Propiedades. En el cuadro de diálogo Páginas de propiedades, expanda Propiedades de configuración, Vinculador. Cambie el valor de Habilitar vinculación incremental a No.
  • Compruebe que la versión de CVTRES.EXE que se encuentra primero en la variable de entorno PATH coincide con la versión de las herramientas de compilación, o la versión del conjunto de herramientas de la plataforma, utilizada por el proyecto.
  • Asegúrese de que el tipo de archivo es válido. Por ejemplo, asegúrese de que un objeto OMF es de 32 bits y no de 16 bits. Para más información, consulte Archivos .obj como entrada del vinculador y Especificación de Microsoft PE y COFF.
  • Compruebe que el archivo no está dañado. Vuelva a compilar, si es necesario.

El verdadero error LNK1123

El verdadero problema es que se instaló el ejecutable CVTRES.EXE de una versión errónea. Es más si intentáis ejecutarlo veréis que ni siquiera sois capaces de hacerlo (de ahí el error LNK1123):

El verdadero problema es que se instaló el ejecutable CVTRES.EXE de una versión errónea Clic para tuitear

C:\> C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe

error-lnk1123-cvtres.exeEste fichero tiene las siguientes propiedades:

lnk1123-propiedades-cvtres.exeSolución a LNK1123

En mi caso tengo la versión previa del fichero CVTRES.exe en la siguiente dirección:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe

con este último fichero lo copias (sobreescribiendo en existente) en:

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe

tienes el problema de LNK1123 solucionado.

 

 

 

 

César Themudo