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 メソッドを実装します。

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

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

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

Obj は,THTTPRIO がすでにほかのインターフェースを実装していたり,IID が登録されていないインターフェースを識別したりしない限りは,指定したインターフェースに対するインターフェースポインタを返します。

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

メモ:  C++ では,テンプレート化された 2 番めの構文では,目的のインターフェース型をラップする DelphiInterface ラッパーである変数を使用します。

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

関連項目