Compartir a través de


Descargar un servidor con identificadores de contexto pendientes

Tradicionalmente, la descarga de un archivo DLL que atiende las llamadas RPC mediante identificadores de contexto, sin detener primero el proceso de hospedaje, ha sido problemático. Esto se debe a que la rutina de ejecución ya no es válida cuando se descarga el archivo DLL. Cuando se produce un error en un cliente con un identificador de contexto abierto previamente y el tiempo de ejecución de RPC intenta cerrar el identificador de contexto, su intento de llamar al acceso rutinario de ejecución infringe y el servidor se bloquea.

A partir de Windows XP, se ha agregado una nueva API denominada RpcServerUnregisterIfEx . RpcServerUnregisterIfEx cierra los identificadores de contexto abiertos por la interfaz que se anula el registro; La función RpcServerUnregisterIf no. El uso de RpcServerUnregisterIfEx no es necesario cuando se cierra todo el proceso, pero es necesario si uno o varios archivos DLL que hospedan las rutinas de ejecución se descargan mientras existen identificadores de contexto pendientes.