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:
http://code.msdn.microsoft.com/KB976656
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:
http://support.microsoft.com/contactus/?ws=supportNota: También puede descargar este hotfix desde el siguiente sitio Web de Microsoft:
https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=25785Nota: 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 archivo |
Versión del archivo |
Tamaño de archivo |
Fecha |
Hora |
---|---|---|---|---|
C1.dll |
15.0.30729.4455 |
677,184 |
10-Dec-2009 |
02:31 |
C1.dll |
15.0.30729.4455 |
828,744 |
10-Dec-2009 |
02:31 |
C1xx.dll |
15.0.30729.4455 |
2,202,952 |
10-Dec-2009 |
02:31 |
C1xx.dll |
15.0.30729.4455 |
2,213,704 |
10-Dec-2009 |
02:31 |
C1xx.dll |
15.0.30729.4455 |
2,348,360 |
10-Dec-2009 |
02:31 |
C1xx.dll |
15.0.30729.4455 |
2,504,016 |
10-Dec-2009 |
02:31 |
C1xx.dll |
15.0.30729.4455 |
2,890,568 |
10-Dec-2009 |
02: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:
Dirección Space Layout Randomization en Windows VistaPara obtener más información acerca de los errores de encabezado precompilado, visite la siguiente entrada de blog de Microsoft: