Partager via


CoRevokeClassObject, fonction (combaseapi.h)

Informe OLE qu’un objet de classe, précédemment inscrit auprès de la fonction CoRegisterClassObject , n’est plus disponible pour utilisation.

Syntaxe

HRESULT CoRevokeClassObject(
  [in] DWORD dwRegister
);

Paramètres

[in] dwRegister

Jeton précédemment retourné par la fonction CoRegisterClassObject .

Valeur retournée

Cette fonction peut retourner les valeurs de retour standard E_INVALIDARG, E_OUTOFMEMORY et E_UNEXPECTED, ainsi que les valeurs suivantes.

Code de retour Description
S_OK
L’objet de classe a été révoqué avec succès.

Remarques

Un appel réussi à CoRevokeClassObject signifie que l’objet de classe a été supprimé de la table d’objets de classe globale (bien qu’il ne libère pas l’objet de classe). Si d’autres clients ont encore des pointeurs vers l’objet de classe et que le nombre de références a été incrémenté par des appels à IUnknown::AddRef, le nombre de références n’est pas égal à zéro. Dans ce cas, les applications peuvent bénéficier si les appels suivants (à l’exception évidente de AddRef et IUnknown::Release) à l’objet de classe échouent. Notez que CoRegisterClassObject appelle AddRef et CoRevokeClassObject appelle Release, de sorte que les deux fonctions forment une paire AddRef/Release .

Une application objet doit appeler CoRevokeClassObject pour révoquer les objets de classe inscrits avant de quitter le programme. Les implémenteurs d’objets de classe doivent appeler CoRevokeClassObject dans le cadre de la séquence de mise en production. Vous devez révoquer spécifiquement l’objet de classe même si vous avez spécifié la valeur d’indicateur REGCLS_SINGLEUSE dans un appel à CoRegisterClassObject, ce qui indique qu’une seule application peut se connecter à l’objet de classe.

Configuration requise

   
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

CoGetClassObject

CoRegisterClassObject