NdrStubForwardingFunction 関数 (rpcproxy.h)

NdrStubForwardingFunction 関数は、基本インターフェイスで定義されているサーバー側オブジェクト メソッドのエントリ ポイントです。

構文

void NdrStubForwardingFunction(
  [in]      IRpcStubBuffer    *This,
  [in]      IRpcChannelBuffer *pChannel,
  [in, out] PRPC_MESSAGE      pmsg,
  [out]     DWORD             *pdwStubPhase
);

パラメーター

[in] This

DCOM インターフェイスの IRpcStubBuffer を実装する CStdStubBuffer オブジェクトのインスタンスへのポインター。

[in] pChannel

多くの場合、OLE によって提供される DCOM インターフェイスの IRpcChannelBuffer へのポインター。

[in, out] pmsg

RPC 要求に関する情報を含む RPC_MESSAGE 構造体へのポインター。

[out] pdwStubPhase

現在のインタープリター呼び出しのアクティビティを追跡するフラグへのポインター。

戻り値

なし

解説

pdwStubPhase パラメーターは、例外処理の動作を決定するためにオブジェクト インターフェイスによって使用されます。 次の表では、 pdwStubPhase パラメーターに使用できる値について説明します。

説明
STUB_UNMARSHAL スタブはマーシャリング フェーズにあります。
STUB_CALL_SERVER スタブはサーバー マネージャー ルーチンを呼び出しています。
STUB_MARSHAL スタブは未調整フェーズです。
STUB_CALL_SERVER_NO_HRESULT 互換性のために残されています。 非推奨のスタブの場合のみ。
 

基本インターフェイスで定義されているメソッドの場合、RPC はコードを基本インターフェイスの実装に転送する必要があります。

例:

Interface IFunctionSample: IUnknown

{

HRESULT FunctionSample();

}

Interface IOperation: IFunctionSample

{

HRESULT Operation();

}

この例では、 IFunctionSampleIOperation が異なる .idl ファイルで定義されています。 IFunctionSample は基本インターフェイスであり、 IOperation は派生インターフェイスです。 IOperation では、IOperation::FunctionSample を実装せずに IOperation を集計できます。 クライアントが IOperation::FunctionSample を呼び出すと、サーバー側で RPC によって呼び出しが IFunctionSample:FunctionSample に転送されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー rpcproxy.h
Library Rpcrt4.lib
[DLL] Rpcrt4.dll