REVISIÓN: Puede recibir un "la memoria no se pudo 'leer'" mensaje de error o una interoperabilidad de COM + se produce un error de excepción inconsistencia al ejecutar aplicaciones de.NET Framework que utilizan el AS / 400 datos cola control ActiveX


Síntomas


Cuando ejecutar las aplicaciones de Microsoft.NET Framework que utilizan el AS / 400 datos cola control ActiveX (Mseigdq.dll) para leer de y escribir en IBM iSeries (AS / 400) colas de datos, puede experimentar uno o varios de los siguientes problemas:
  • Recibir los mensajes de error de aplicación similares al siguiente:
    ApplicationName – Error de aplicación


    La instrucción en "dirección de memoria" hace referencia a la memoria en "0 x 00000000". La memoria no se pudo "leer".



    Haga clic en Aceptar para terminar el programa

    Haga clic en Cancelar para depurar el programa
  • Al intentar procesar un registro que se devuelve cuando la aplicación llama al método DataQueue.GetQueueItem , se produce una excepción de falta de coincidencia de tipo de interoperabilidad COM + de Microsoft. Esta excepción sólo se produce cuando la aplicación utiliza código administrado. Esta excepción no se produce si la aplicación utiliza Microsoft Visual Basic 6. El mensaje de error que aparece puede ser similar al siguiente:
    System.Runtype.InteropServices.SafeArrayTypeMismatchException

Causa


Recibe un "la memoria no se pudo 'leer'" mensaje de error porque el AS / 400 control ActiveX de la cola de datos intenta leer una ubicación de memoria no válida.

Se produce la excepción de falta de coincidencia de tipo de interoperabilidad COM + porque el AS / 400 control ActiveX de la cola de datos devuelve los datos del registro como una matriz segura de datos VT_UI1. Estos datos no están compatible con automatización. Este comportamiento hace que la capa de interoperabilidad COM + devolver la excepción de falta de coincidencia tipo porque la capa de interoperabilidad COM no sabe cómo convertir los datos VT_UI1.

Solució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.

Si la revisión está disponible para su descarga, hay una sección de "Descarga de revisión disponible" en la parte superior de este artículo de Knowledge Base. Si esta sección no aparece, póngase en contacto con el servicio al cliente de Microsoft y soporte técnico para obtener la revisión.

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: El formulario de "Descarga de Hotfix disponible" muestra los idiomas para los que el Hotfix está disponible. Si no ve su idioma, es porque no hay una revisión para ese idioma.

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 la herramienta fecha y hora del Panel de Control.
   Date         Time   Version     Size     File name
----------------------------------------------------
29-Sep-2005 19:39 6.0.1988.0 121,344 Mseigdq.dll
Nota: Debido a la interdependencia entre archivos, la revisión más reciente que contiene estos archivos puede contener también archivos adicionales.

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


Esta revisión actualiza el AS / 400 datos cola mensajes de control de ActiveX para corregir el problema que provoca el error de aplicación cuando se obtiene acceso a memoria no válida.

Este hotfix no corrige el problema en el que se produce una excepción de error de coincidencia de tipo de interoperabilidad COM +. Sin embargo, puede resolver el problema mediante el uso de la versión 2.0 de.NET Framework en cualquier equipo que ejecute una aplicación de.NET Framework que llama el AS / 400 datos cola control ActiveX. La versión 2.0 de.NET Framework puede correctamente las referencias de matrices de bytes sin signo como tipos de datos VT_UI1. Por lo tanto, no se produce la excepción de falta de coincidencia de tipos.