Soap.Rio.TRIO.QueryInterface
Delphi
function QueryInterface(const IID: TGUID; out Obj): HResult; override; stdcall;
C++
virtual HRESULT __stdcall QueryInterface(const GUID &IID, /* out */ void *Obj);
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
function | public | Soap.Rio.pas Soap.Rio.hpp |
Soap.Rio | TRIO |
Description
Implémente la méthode IInterface QueryInterface.
QueryInterface est appelée via l'interface IInterface afin d'obtenir un pointeur d'interface pour l'interface identifiée par le paramètre IID. Dans Delphi, cet appel est généré lorsqu'une application transtype TRIO en une interface invocable en utilisant l'opérateur as.
TRIO ne peut renvoyer qu'un seul type de pointeur d'interface. Lorsqu'une application appelle QueryInterface pour la première fois, TRIO génère une table de méthodes en mémoire pour prendre en charge les appels aux méthodes sur l'interface demandée.
IID indique l'interface invocable que l'application souhaite appeler en utilisant cette instance de TRIO. Si l'objet TRIO a déjà été transtypé en une interface, IID doit identifier celle-ci. Si l'instance de TRIO n'a pas encore été transtypée en une interface, IID doit être une interface invocable recensée.
Obj renvoie un pointeur pour l'interface spécifiée, sauf si TRIO a déjà implémenté une autre interface ou si IID a identifié une interface qui n'a pas été recensée.
QueryInterface renvoie 0 (S_OK) si Obj renvoie un pointeur d'interface. Sinon, elle renvoie E_NOINTERFACE.
Si QueryInterface parvient à renvoyer un pointeur d'interface, elle incrémente automatiquement le compteur de références.