Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

REVISIÓN: Infracción de acceso al cerrar el objeto Recordset de ADO en aplicaciones multiproceso

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): 272373
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Síntomas
Al ejecutar código multiproceso de ActiveX Data Objects (ADO) bajo carga alta en un equipo multiprocesador, puede producirse una infracción de acceso (AV) al cerrar un objeto Recordset de ADO. Examen de la pila de llamadas al tiempo de AV (con símbolos de depuración apropiados instalado) revela que la última llamada de ADO en la pila es una llamada a msado15 de función interna ADO! CCollectionArray__Delete.
Solución
Este problema se corrigió en los service Pack más recientes para Microsoft Windows 2000, MDAC 2.5 y MDAC 2.6 y en la versión 2.7 de MDAC.
  • Para resolver este problema, obtenga el Service Pack más reciente de Windows 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    260910Cómo obtener el Service Pack más reciente para Windows 2000
  • Para resolver este problema, obtenga el service pack más reciente para Microsoft Data Access Components 2.5. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    293312INFO: Cómo obtener la más reciente de MDAC 2.5 Service Pack
  • Para resolver este problema, obtenga el service pack más reciente para Microsoft Data Access Components 2.6. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    300635INFO: Cómo obtener la más reciente de MDAC 2.6 Service Pack

revisión

La versión en inglés de esta revisión tener los atributos de archivo siguientes o posteriores:
   Date         Version       Size      File name     Platform   -----------------------------------------------------------   09/15/2000   2.51.5715.0   487,696   Msado15.dll   x86 				
Solución
Evitar cerrar un objeto Recordset de ADO y su objeto de conexión de ADO primario exactamente al mismo tiempo en distintos 2 subprocesos, o aplicar este hotfix.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:" de este artículo. Este problema se corrigió por primera vez en Microsoft Data Access Components (MDAC) 2.5 Service Pack 2, Service Pack 1 de MDAC 2.6, MDAC 2.7 y Microsoft Windows 2000 Service Pack 2.
Más información
Para reproducir el problema, su principal conexión de ADO y un objeto Recordset de ADO deben ser cerrados o publicaron 2 distintos subprocesos al mismo tiempo. Tenga en cuenta que este problema sólo ha ha reproducido correctamente en un equipo multiprocesador.

Se descubrió el problema inicial mediante las clases de Java de ADO de Windows Foundation Classes (WFC) en una aplicación COM + bajo cargas pesadas con ADO en modo de subprocesamiento libre. La máquina virtual de Microsoft (Microsoft VM) se pospone la versión de los objetos COM hasta que el recolector de elementos no utilizados está activado. Además, el recolector de elementos no utilizados realiza la versión del objeto COM en un subproceso en segundo plano. Si cierra una conexión de ADO de WFC, esto coloca el puntero de interfaz de conexión de ADO COM en una lista de punteros para futura limpieza por el recolector de elementos no utilizados. Si el código de aplicación principal posteriormente cierra un objeto Recordset de ADO exactamente al mismo tiempo que el subproceso de fondo del recolector de elementos no utilizados libera su puntero de interfaz ADO Connection principal, puede producirse el va.
procesador de múltiples subprocesos

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 272373 - Última revisión: 01/11/2015 03:50:07 - Revisión: 8.1

Microsoft Data Access Components 2.5, Microsoft Data Access Components 2.5 Service Pack 1, Microsoft Data Access Components 2.6

  • kbnosurvey kbarchive kbmt kbqfe kbhotfixserver kbbug kbfix kbmdac250sp2fix kbmdac260sp1fix KB272373 KbMtes
Comentarios