API:Soap.SOAPHTTPClient.THTTPRIO.QueryInterface

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

function QueryInterface(const IID: TGUID; out Obj): HResult; override; stdcall;

C++

HRESULT __stdcall QueryInterface(::System::DelphiInterface<T>& smartIntf)
virtual HRESULT __stdcall QueryInterface(const GUID &IID, /* out */ void *Obj);

プロパティ

種類 可視性 ソース ユニット
function public
Soap.SOAPHTTPClient.pas
Soap.SOAPHTTPClient.hpp
Soap.SOAPHTTPClient THTTPRIO

説明

IInterface QueryInterface メソッドを実装します。

Soap.SOAPHTTPClient.THTTPRIO.QueryInterface は Soap.Rio.TRIO.QueryInterface を継承しています。以下の内容はすべて Soap.Rio.TRIO.QueryInterface を参照しています。

IInterface QueryInterface メソッドを実装します。

QueryInterface メソッドは IInterface インターフェースを介して呼び出され,IID パラメータで識別されるインターフェースのインターフェースポインタを取得します。Delphi では,この呼び出しは,アプリケーションが as 演算子を使って TRIO を呼び出し可能なインターフェースにキャストしたときに生成されます。

TRIO が返せるインターフェースポインタの型は,1 つだけです。アプリケーションが最初に QueryInterface を呼び出したときに,TRIO はメモリ内メソッドテーブルを生成して,要求されたインターフェースのメソッドの呼び出しをサポートします。

IID は,この TRIO インスタンスを使用して,アプリケーションが呼び出す呼び出し可能なインターフェースを指定します。TRIO オブジェクトがすでにインターフェースに型キャストされている場合,IID はそのインターフェースを識別する必要があります。TRIO インスタンスがまだインターフェースに型キャストされていない場合,IID は登録されている呼び出し可能なインターフェースである必要があります。

Obj は,TRIO がすでにほかのインターフェースを実装していない場合や,IID が登録されていないインターフェースを特定していない場合は,指定したインターフェースのインターフェースポインタを返します。

QueryInterface は,Obj がインターフェースポインタを返すことに成功すると,0(S_OK)を返します。成功しなかった場合は,E_NOINTERFACE を返します。

QueryInterface は,インターフェースポインタを返すことに成功すると,参照カウントを自動的にインクリメントします。

関連項目