ICallUnmarshal::Unmarshal メソッド (callobj.h)

データのマーシャリングされたパケットをアクティブ化レコードに戻し、他の方法で呼び出したり操作したりできます。

構文

HRESULT Unmarshal(
  [in]  ULONG                    iMethod,
  [in]  PVOID                    pBuffer,
  [in]  ULONG                    cbBuffer,
  [in]  BOOL                     fForceBufferCopy,
  [in]  RPCOLEDATAREP            dataRep,
  [in]  CALLFRAME_MARSHALCONTEXT *pcontext,
  [out] ULONG                    *pcbUnmarshalled,
  [out] ICallFrame               **ppFrame
);

パラメーター

[in] iMethod

メソッド番号。 このパラメーターが -1 の場合、メソッド番号は、マーシャリングされないデータから決定されます。

[in] pBuffer

アクティブ化レコードの作成元となるバッファーへのポインター。

[in] cbBuffer

バッファーのサイズ (バイト単位)。

[in] fForceBufferCopy

バッファーをコピーして保持する (0 以外の) か、バッファーが有効なまま (ゼロ) かを示します。

[in] dataRep

データがマーシャリングされたデータ表現。

[in] pcontext

マーシャリング解除を実行するコンテキストに関する情報を含む CALLFRAME_MARSHALCONTEXT構造体への ポインター。

[out] pcbUnmarshalled

マーシャリングが正常に解除されたバイト数へのポインター。

[out] ppFrame

umarshaled 呼び出しにバインドされた呼び出しフレーム。

戻り値

このメソッドは、次の値を返すことができます。

リターン コード 説明
S_OK
メソッドは正常に完了しました。
E_UNEXPECTED
予期しないエラーが発生しました。

要件

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

こちらもご覧ください

ICallUnmarshal