REVISIÓN: Un comportamiento inesperado al ejecutar una aplicación de Visual Studio 2008 Service Pack 1 generada que llama la función setjmp o longjmp en un archivo de origen

Seleccione idioma Seleccione idioma
Id. de artículo: 2498381
Expandir todo | Contraer todo

En esta página

Síntomas

Considere el siguiente escenario:
  • Habilita el (opción de optimización global/Og) al permitir que una de las siguientes opciones:
    • / O1 
    • / O2 
    • /Ox 
  • Generar un archivo de código fuente de Microsoft Visual C++ con Microsoft Visual Studio 2008 Service Pack 1 (SP1).
  • Los archivo de origen, las llamadas a lasetjmpfunción, ellongjmpfunción, o ambas funciones.

En este escenario, el compilador puede utilizar el mismo desplazamiento de la pila para almacenar diferentes variables locales. Por lo tanto, puede producirse un comportamiento inesperado al ejecutar la aplicación generada.

Causa

Este problema se produce porque el optimizador no tiene en cuenta para el setjmpfunción o ellongjmpfunción. Esto hace que el optimizador calcular incorrectamente el período de duración de las variables locales. Cuando se cambia una variable, se puede cambiar inesperadamente otra variable.

Solución

Información de la revisión

Hay un hotfix compatible de Microsoft. Sin embargo, esta revisión se diseñó para corregir el problema descrito en este artículo. Esta revisión sólo se aplican a sistemas que experimenten el problema descrito en este artículo. 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 que la próxima actualización de software que contenga este hotfix.

Para resolver este problema inmediatamente, póngase en contacto con los servicios de soporte técnico de Microsoft para obtener la revisión. Para obtener una lista completa de los números de teléfono de soporte y 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=support
Nota En casos especiales, los costos derivados normalmente llamadas de soporte técnico pueden cancelarse si un profesional de soporte técnico de Microsoft determina que una actualización específica resolverá el problema. Los costos de soporte técnico usuales se aplicarán a las cuestiones y problemas que no reúnan los requisitos para la actualización en cuestión.

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/KB2498381

Nota La Galerie de Code 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 la Galería de códigos no está disponible para ese idioma.

O bien, puede descargar este hotfix desde el siguiente sitio Web de Microsoft Connect:
¿https://Connect.Microsoft.com/VisualStudio/downloads/downloaddetails.aspx?DownloadID = 34826

Requisitos previos

Para aplicar este hotfix, debe tener Microsoft Visual Studio 2008 Service Pack 1 instalado.

Información de reinicio

No es necesario que reinicie el equipo después de instalar este hotfix si ha dejado de todas las instancias de Visual Studio.

Información de reemplazo de hotfix

Esta revisión no sustituye a ninguna revisión publicada previamente.

Información de archivo

La versión global de esta revisión instala los archivos que tienen los atributos que aparecen en las tablas siguientes. Las fechas y las horas de estos archivos se muestran en hora Universal coordinada (UTC). Se muestran las fechas y las horas de estos archivos en el equipo local en horario local junto con la diferencia de horario de verano (DST) actual. Además, las fechas y las horas pueden cambiar cuando realiza ciertas operaciones en los archivos.
Contraer esta tablaAmpliar esta tabla
Nombre de archivoVersión del archivoTamaño de archivoFechaTiempoPlataforma
C2.dll15.0.30729.61472,283,84025-Feb-201101: 25x 86
C2.dll15.0.30729.61472,362,68825-Feb-201101: 25x 86
C2.dll15.0.30729.61472,493,24825-Feb-201101: 25x 86
C2.dll15.0.30729.61473,018,04825-Feb-201101: 25x 64
C2.dll15.0.30729.61477,263,04025-Feb-201101: 25IA-64
Link.exe9.0.30729.61471,055,56025-Feb-201101: 25x 64
Link.exe9.0.30729.61472,135,36825-Feb-201101: 25IA-64
Link.exe9.0.30729.6147800,58425-Feb-201101: 25x 86



Solución

Para evitar este problema, inicializar las variables locales al principio de la función de modo que el compilador puede tener en cuenta la duración de las variables de'.

Estado

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

Más información

Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 2498381 - Última revisión: jueves, 21 de abril de 2011 - Versión: 2.0
Palabras clave: 
kbqfe kbhotfixserver kbfix kbexpertiseinter kbsurveynew kbbug kbmt KB2498381 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 2498381

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com