Share via


Metodo IGlobalInterfaceTable::RegisterInterfaceInGlobal (objidl.h)

Registra l'interfaccia specificata in un oggetto che risiede in un appartamento di un processo come interfaccia globale, consentendo ad altri appartamenti di accedere a tale interfaccia.

Sintassi

HRESULT RegisterInterfaceInGlobal(
  [in]  IUnknown *pUnk,
  [in]  REFIID   riid,
  [out] DWORD    *pdwCookie
);

Parametri

[in] pUnk

Puntatore dell'interfaccia di tipo riid nell'oggetto in cui viene implementata l'interfaccia da registrare come globale.

[in] riid

Id dell'interfaccia da registrare come globale.

[out] pdwCookie

Identificatore che può essere usato da un altro appartamento per ottenere l'accesso a un puntatore all'interfaccia registrata. Il valore di un cookie non valido è 0.

Valore restituito

Questo metodo può restituire i valori seguenti.

Codice restituito Descrizione
S_OK
Metodo completato correttamente.
E_INVALIDARG
Uno o più parametri non sono validi.

Commenti

Chiamato nell'appartamento in cui risiede un oggetto per registrare una delle interfacce dell'oggetto come interfaccia globale. Questo metodo fornisce un puntatore a un cookie che altri appartamenti possono usare in una chiamata al metodo GetInterfaceFromGlobal per ottenere un puntatore a tale interfaccia.

Il puntatore dell'interfaccia può essere un puntatore a un oggetto in-process oppure può essere un puntatore a un proxy per un oggetto che risiede in un altro appartamento, in un altro processo o in un altro computer.

L'appartamento che chiama questo metodo deve rimanere attivo fino alla chiamata corrispondente a RevokeInterfaceFromGlobal.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione objidl.h (include ObjIdl.h)

Vedi anche

IGlobalInterfaceTable