IGlobalInterfaceTable ::RegisterInterfaceInGlobal, méthode (objidl.h)
Inscrit l’interface spécifiée sur un objet résidant dans un appartement d’un processus en tant qu’interface globale, ce qui permet à d’autres appartements d’accéder à cette interface.
Syntaxe
HRESULT RegisterInterfaceInGlobal(
[in] IUnknown *pUnk,
[in] REFIID riid,
[out] DWORD *pdwCookie
);
Paramètres
[in] pUnk
Pointeur d’interface de type riid sur l’objet sur lequel l’interface à inscrire comme globale est implémentée.
[in] riid
IID de l’interface à inscrire comme globale.
[out] pdwCookie
Identificateur qui peut être utilisé par un autre appartement pour accéder à un pointeur vers l’interface inscrite. La valeur d’un cookie non valide est 0.
Valeur retournée
Cette méthode peut retourner les valeurs suivantes.
Code de retour | Description |
---|---|
|
La commande s'est correctement terminée. |
|
Un ou plusieurs paramètres ne sont pas valides. |
Remarques
Appelé dans l’appartement dans lequel réside un objet pour inscrire l’une des interfaces de l’objet en tant qu’interface globale. Cette méthode fournit un pointeur vers un cookie que d’autres appartements peuvent utiliser dans un appel à la méthode GetInterfaceFromGlobal pour obtenir un pointeur vers cette interface.
Le pointeur d’interface peut être un pointeur vers un objet en cours de traitement ou un pointeur vers un proxy pour un objet résidant dans un autre appartement, dans un autre processus ou sur un autre ordinateur.
L’appartement qui appelle cette méthode doit rester actif jusqu’à l’appel correspondant à RevokeInterfaceFromGlobal.
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 | objidl.h (inclure ObjIdl.h) |