Mensaje de error al utilizar el compilador de Visual C++ 2008: "error grave C1859"

Síntomas

Cuando se ejecuta el compilador de Microsoft Visual C++ 2008 para compilar los archivos o generar un proyecto, recibe el siguiente mensaje de error:
error grave C1859: encabezado precompilado inesperado de nombre de archivo de encabezado , basta con volver a ejecutar el compilador podría solucionar este problema.
Además, este problema persiste incluso al ejecutar el compilador de nuevo. Este problema se produce cuando se habilita la opción de compilador de Crear o utilizar encabezado precompilado en un equipo que ejecuta Windows 7 o Windows Server 2008.

Nota: Puede encontrarse con frecuencia este problema más si habilita la opción de compilador / analyze .

Causa

Cuando se habilita la opción de compilador de Crear o utilizar encabezado precompilado , el compilador requiere que los archivos de encabezado precompilado y los módulos relativos no se mueven entre compilaciones. Sin embargo, la característica de Address Space Layout Randomization (ASLR, también conocido como) aleatoriamente reubica módulos en un proceso. Por lo tanto, el error se produce cuando módulos mover entre compilaciones.

Solución

Información de la revisión

Existe un hotfix disponible desde Microsoft. Sin embargo, esta revisión se diseñó para corregir únicamente el problema que se describe en este artículo. Aplíquela sólo a sistemas que experimenten este problema específico. Esta revisión podría ser sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la próxima actualización de software que contenga este hotfix.

Para descargar este hotfix desde la Galería de código de Microsoft Developer Network (MSDN), visite el siguiente sitio Web de Microsoft:


Nota: MSDN Code Gallery muestra los idiomas para los que la revisión está disponible. Si no ve su idioma en la lista, es porque la página de recursos de galería de código no está disponible para ese idioma.


Nota: Si se producen problemas adicionales o si se requiere cualquier otra solución, será necesario crear una solicitud de revisión independiente. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no califican para esta revisión específica. Para obtener una lista completa de los números de teléfono de servicio al cliente de Microsoft o para crear una solicitud de servicio independiente, visite el siguiente sitio Web de Microsoft:

Nota: También puede descargar este hotfix desde el siguiente sitio Web de Microsoft:Nota: Este paquete de hotfix también contiene una corrección para "C1001: error interno del compilador (compilador archivo f:\dd\vctools\compiler\utc\src\p2\main.c, línea 182) cuando se utiliza .NET framework 3.5.

Requisitos previos

Debe tener Microsoft Visual Studio 2008 Service Pack 1 instalado para aplicar esta revisión.

Requisito de reinicio

No es necesario que reinicie el equipo después de aplicar la revisión si no se utiliza ninguna instancia de Visual Studio.

Información de reemplazo de revisión

Este hotfix no sustituye a otras revisiones.

Información de archivo


La versión en inglés de esta revisión tiene los atributos de archivo (o atributos del archivo más reciente) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha
Zona horaria
ficha en el
Fecha y hora
en Panel de Control.
Nombre del archivoVersión del archivoTamaño de archivoFechaHora
C1.dll15.0.30729.4455677,18410-Dec-200902:31
C1.dll15.0.30729.4455828,74410-Dec-200902:31
C1xx.dll15.0.30729.44552,202,95210-Dec-200902:31
C1xx.dll15.0.30729.44552,213,70410-Dec-200902:31
C1xx.dll15.0.30729.44552,348,36010-Dec-200902:31
C1xx.dll15.0.30729.44552,504,01610-Dec-200902:31
C1xx.dll15.0.30729.44552,890,56810-Dec-200902:31

Solución alternativa

Para evitar este problema, utilice uno de los métodos siguientes.


Método 1

Deshabilitar la opción de compilador / analyze , si está habilitado.

Método 2

Inicie una generación limpia.

Método 3

Reinicie el equipo.

Método 4

Deshabilite la opción del compilador de Crear o utilizar encabezado precompilado .


Nota: No se garantiza que estos métodos funcionen. Incluso si utiliza uno de estos métodos, todavía puede encontrar este problema.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Más información

Para obtener más información acerca de Address Space Layout Randomization, visite la siguiente entrada de blog de Microsoft:Para obtener más información acerca de los errores de encabezado precompilado, visite la siguiente entrada de blog de Microsoft:
Propiedades

Id. de artículo: 976656 - Última revisión: 13 ene. 2017 - Revisión: 1

Microsoft Visual C++ 2008 Express Edition, Microsoft Visual Studio 2008 Academic Edition, Microsoft Visual Studio 2008 Professional Edition, Microsoft Visual Studio 2008 Professional Edition, Microsoft Visual Studio 2008 Standard Edition, Microsoft Visual Studio 2008 Standard Edition, Microsoft Visual Studio 2008 Team Edition for Database Professionals, Microsoft Visual Studio 2008 Team Edition for Software Architects, Microsoft Visual Studio 2008 Team Edition for Software Developers, Microsoft Visual Studio 2008 Team Edition for Software Testers, Microsoft Visual Studio 2008 Team Suite

Comentarios