Función CoUninitialize (combaseapi.h)
Cierra la biblioteca COM en el subproceso actual, descarga todos los archivos DLL cargados por el subproceso, libera los demás recursos que mantiene el subproceso y obliga a que todas las conexiones RPC del subproceso se cierren.
Sintaxis
void CoUninitialize();
Valor devuelto
None
Observaciones
Un subproceso debe llamar a CoUninitialize una vez para cada llamada correcta realizada a la función CoInitialize o CoInitializeEx , incluida cualquier llamada que devuelva S_FALSE. Solo la llamada CoUninitialize correspondiente a la llamada CoInitialize o CoInitializeEx que inicializó la biblioteca puede cerrarla.
Las llamadas a OleInitialize deben equilibrarse mediante llamadas a OleUninitialize. La función OleUninitialize llama a CoUninitialize internamente, por lo que las aplicaciones que llaman a OleUninitialize tampoco necesitan llamar a CoUninitialize.
Se debe llamar a CoUninitialize en el apagado de la aplicación, ya que la última llamada realizada a la biblioteca COM después de que la aplicación oculte sus ventanas principales y pase por su bucle de mensajes principal. Si quedan conversaciones abiertas, CoUninitialize inicia un bucle de mensajes modal y envía los mensajes pendientes desde los contenedores o el servidor para esta aplicación COM. Al enviar los mensajes, CoUninitialize garantiza que la aplicación no salga antes de recibir todos sus mensajes pendientes. Los mensajes que no son COM se descartan.
Dado que no hay ninguna manera de controlar el orden en el que los servidores en proceso se cargan o descargan, no llame a CoInitialize, CoInitializeEx o CoUninitialize desde la función DllMain .
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 | combaseapi.h (incluya Objbase.h) |
Library | Ole32.lib |
Archivo DLL | Ole32.dll |