MDA de invalidGCHandleCookie

Actualización: noviembre 2007

El Ayudante para la depuración administrada (MDA) invalidGCHandleCookie se activa cuando se intenta una conversión de una cookie IntPtr no válida en GCHandle.

Síntomas

Comportamiento indefinido, como infracciones de acceso y daños en la memoria, al intentar utilizar o recuperar un GCHandle de un IntPtr.

Motivo

Probablemente la cookie no sea válida porque no fue creada originalmente a partir de un GCHandle, porque representa un GCHandle que ya ha sido liberado, porque es una cookie a un objeto GCHandle de otro dominio de aplicación o porque se calcularon sus referencias a código nativo como GCHandle, pero se volvió a pasar a CLR como IntPtr, donde se intentó una conversión.

Resolución

Especifique una cookie IntPtr válida para GCHandle.

Efecto en Common Language Runtime

Cuando se activa el Ayudante para la depuración administrada, el depurador ya no puede seguir realizando el seguimiento de las raíces y sus objetos, porque los valores pasados de la cookie son distintos de los devueltos cuando el Ayudante para la depuración administrada no está activado.

Resultados

Se crea un informe con el valor de la cookie IntPtr no válida.

Configuración

<mdaConfig>
  <assistants>
    <invalidGCHandleCookie />
  </assistants>
</mdaConfig>

Vea también

Conceptos

Diagnóstico de errores con ayudantes de depuraciones administradas

Referencia

FromIntPtr

GCHandle