REVISIÓN: En un equipo que tiene instalado 3.5 Service Pack 1 de.NET Framework, se produce una excepción cuando una aplicación llama al método GetOptionalCustomModifiers o el método GetRequiredCustomModifiers en un objeto ParameterInfo de una interfaz genérica

Síntomas

Tiene una aplicación que llama al método GetOptionalCustomModifiers o el método GetRequiredCustomModifiers en el objeto ParameterInfo de una interfaz genérica. Al ejecutar esta aplicación en un equipo que tiene el Microsoft.NET Framework 3.5 Service Pack 1 (SP1) instalado, se produce una excepción y recibirá un mensaje de error similar al siguiente:
Se ha producido una excepción no controlada del tipo 'System.ExecutionEngineException' en mscorlib.dll
Además, se graba el suceso 1023 de ID en el registro de aplicación. Este evento es similar a la siguiente: evento ID 1000 también puede anotarse en el registro de aplicación. Este evento es similar a la siguiente:

Causa

Este problema se produce debido a un problema en.NET Framework 3.5 SP1.

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 esta revisión desde MSDN Code Gallery, 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: Si debe tener esta revisión para Windows Server 2008 o Windows Vista Service Pack 1, obtenga la revisión 957542 en su lugar. Revisión 957542 resuelve este problema y está disponible para esos sistemas operativos. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

CORREGIR 957542 : en un equipo que está ejecutando el Service Pack 1 de.NET Framework 3.5, el compilador JIT y Native Image Generator (Ngen.exe) que utilicen el archivo Mscorjit.dll pueden generar código incorrecto

Requisitos previos

Debe tener la versión.NET Framework 3.5 SP1 instalado para aplicar esta revisión.

Requisito de reinicio

Tendrá que reiniciar el equipo si se utiliza alguno de los archivos que se actualizan.

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 en el elemento de Fecha y hora del Panel de control.
Windows 2000, Windows XP y Windows Server 2003, x86 versiones
Nombre del archivoVersión del archivoTamaño de archivoFechaHora
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813:13
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813:13
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813:13
Windows 2000, Windows XP y Windows Server 2003, x64 versiones
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataforma
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813:13x86
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813:13x86
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813:13x86
Mscordacwks.dll2.0.50727.30681,767,94416-Sep-200810:33x64
Mscorlib.dll2.0.50727.30684,562,94416-Sep-200810:33x64
Mscorwks.dll2.0.50727.306810,079,74416-Sep-200810:33x64
Windows 2000, Windows XP y Windows Server 2003, versiones IA-64
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataforma
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813:13x86
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813:13x86
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813:13x86
Mscordacwks.dll2.0.50727.30683,087,88016-Sep-200810:44IA-64
Mscorlib.dll2.0.50727.30684,005,88816-Sep-200810:44IA-64
Mscorwks.dll2.0.50727.306820,153,85616-Sep-200810:44IA-64

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

Pasos para reproducir el problema

Para reproducir este problema, cree un proyecto de Microsoft Visual C# y, a continuación, ejecute el siguiente código en un equipo que tiene instalado.NET Framework 3.5 SP1.
using System;namespace GetCustomModifiersBug
{
public interface IGenericInterface<T1, T2>
{
void GenericIfcMethod<T3>(T3 t3);
}
class Program
{
static void Main()
{

Type ifc = typeof(IGenericInterface<int, int>);
// Either of the following lines on their own will cause the problem
ifc.GetMethod("GenericIfcMethod").GetParameters()[0].GetOptionalCustomModifiers();
ifc.GetMethod("GenericIfcMethod").GetParameters()[0].GetRequiredCustomModifiers();

}
}
}

Referencias

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: 957541 - Última revisión: 14 ene. 2017 - Revisión: 1

Comentarios