Método ISurrogate::FreeSurrogate (objidl.h)
Descarga un servidor DLL.
Sintaxis
HRESULT FreeSurrogate();
Valor devuelto
Este método puede devolver los valores devueltos estándar E_UNEXPECTED, E_FAIL y S_OK.
Comentarios
COM llama a FreeSurrogate cuando no hay más servidores DLL que se ejecutan en el proceso suplente. Cuando se llama a FreeSurrogate , el método debe revocar correctamente todas las factorías de clase registradas en el suplente y, a continuación, hacer que el proceso suplente salga.
Los procesos suplentes deben llamar a la función CoFreeUnusedLibraries periódicamente para descargar servidores DLL que ya no estén en uso. El proceso suplente asume esta responsabilidad, que normalmente sería responsabilidad del cliente. CoFreeUnusedLibraries llama a la función DllCanUnloadNow en cualquier servidor DLL cargado. Dado que CoFreeUnusedLibraries depende de la existencia y la implementación adecuada de DllCanUnloadNow en los servidores DLL, no se garantiza que descargue todos los servidores DLL que deben descargarse,-no todos los servidores implementan DllCanUnloadNow y esta función no es confiable para los archivos DLL sin subprocesos. Además, el suplente no tiene forma de informarse cuando todos los servidores DLL han desaparecido. Sin embargo, COM puede determinar cuándo se han descargado todos los servidores DLL y, a continuación, llamará al método FreeSurrogate .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | objidl.h (incluya ObjIdl.h) |