CoUninitialize, fonction (combaseapi.h)

Ferme la bibliothèque COM sur le thread actuel, décharge toutes les DLL chargées par le thread, libère toutes les autres ressources que le thread gère et force toutes les connexions RPC sur le thread à fermer.

Syntaxe

void CoUninitialize();

Valeur de retour

None

Remarques

Un thread doit appeler CoUninitialize une fois pour chaque appel réussi qu’il a effectué à la fonction CoInitialize ou CoInitializeEx , y compris tout appel qui retourne S_FALSE. Seul l’appel CoUninitialize correspondant à l’appel CoInitialize ou CoInitializeEx qui a initialisé la bibliothèque peut le fermer.

Les appels à OleInitialize doivent être équilibrés par les appels à OleUninitialize. La fonction OleUninitialize appelle CoUninitialize en interne, de sorte que les applications qui appellent OleUninitialize n’ont pas besoin d’appeler CoUninitialize.

CoUninitialize doit être appelé lors de l’arrêt de l’application, car le dernier appel effectué à la bibliothèque COM après que l’application a masqué ses fenêtres main et est passée par sa boucle de message main. S’il reste des conversations ouvertes, CoUninitialize démarre une boucle de message modale et distribue les messages en attente à partir des conteneurs ou du serveur pour cette application COM. En répartissant les messages, CoUninitialize s’assure que l’application ne quitte pas avant de recevoir tous ses messages en attente. Les messages non COM sont ignorés.

Étant donné qu’il n’existe aucun moyen de contrôler l’ordre dans lequel les serveurs in-process sont chargés ou déchargés, n’appelez pas CoInitialize, CoInitializeEx ou CoUninitialize à partir de la fonction DllMain .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête combaseapi.h (inclure Objbase.h)
Bibliothèque Ole32.lib
DLL Ole32.dll

Voir aussi

CoInitialize

CoInitializeEx

OleUninitialize