Função CoUninitialize (combaseapi.h)
Fecha a biblioteca COM no thread atual, descarrega todas as DLLs carregadas pelo thread, libera todos os outros recursos que o thread mantém e força o fechamento de todas as conexões RPC no thread.
Sintaxe
void CoUninitialize();
Retornar valor
Nenhum
Comentários
Um thread deve chamar CoUninitialize uma vez para cada chamada bem-sucedida feita para a função CoInitialize ou CoInitializeEx , incluindo qualquer chamada que retorne S_FALSE. Somente a chamada CoUninitialize correspondente à chamada CoInitialize ou CoInitializeEx que inicializou a biblioteca pode fechá-la.
As chamadas para OleInitialize devem ser balanceadas por chamadas para OleUninitialize. A função OleUninitialize chama CoUninitialize internamente, para que os aplicativos que chamam OleUninitialize também não precisem chamar CoUninitialize.
CoUninitialize deve ser chamado no desligamento do aplicativo, pois a última chamada feita à biblioteca COM depois que o aplicativo oculta suas janelas main e cai em seu loop de mensagem main. Se houver conversas abertas restantes, CoUninitialize iniciará um loop de mensagem modal e enviará todas as mensagens pendentes dos contêineres ou do servidor para este aplicativo COM. Ao expedir as mensagens, o CoUninitialize garante que o aplicativo não seja encerrado antes de receber todas as suas mensagens pendentes. Mensagens não COM são descartadas.
Como não há como controlar a ordem na qual os servidores em processo são carregados ou descarregados, não chame CoInitialize, CoInitializeEx ou CoUninitialize da função DllMain .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | combaseapi.h (inclua Objbase.h) |
Biblioteca | Ole32.lib |
DLL | Ole32.dll |