ORPC_DBG_BUFFER構造体
ORPC_DBG_BUFFER構造体は、RPC データを IOrpcDebugNotify インターフェイスのメソッドにマーシャリングするために使用されるバッファー形式です。
構文
typedef struct _ORPC_DBG_BUFFER {
DWORD alwaysOrSometimes;
BYTE verMajor;
BYTE verMinor;
DWORD cbRemaining;
GUID guidSemantic;
union {
BOOL fStopOnOtherSide;
USHORT wDebuggingOpCode;
USHORT cExtent;
BYTE padding[2];
struct {
ULONG cb;
GUID guidExtent;
BYTE *rgbData;
};
};
} ORPC_DBG_BUFFER, *PORPC_DBG_BUFFER;
メンバー
-
alwaysOrSometimes
-
デバッガーの生成を制御する 値。 alwaysOrSometimes には、次のいずれかの値を指定できます。
値 説明 - ORPC_DEBUG_ALWAYS
- 0x00000000
設定されている場合、COM は常に受信側でクライアントまたはサーバーの通知を発生させます。 - ORPC_DEBUG_IF_HOOK_ENABLED
- 0x00000001
設定されている場合、COM は、fTrace が TRUE に設定されたそのプロセスで DllDebugObjectRPCHook を呼び出すことによって COM デバッグが有効になっている場合にのみ、受信側でクライアントまたはサーバーの通知を発生させます。 -
verMajor
-
データ形式仕様のメジャー バージョン番号。
-
verMinor
-
データ形式仕様のマイナー バージョン番号。
-
cbRemaining
-
この構造体に続く cbRemaining を含むバイト数。
-
guidSemantic
-
以下に存在する共用体のメンバーを決定する GUID。 guidSemantic は、次のいずれかの値を受け取ることができます。
値 説明 - 9CADE560-8F43-101A-B07B-00DD01113F11
デバッガーで単一のステップ実行を実行するかどうかを決定します。 以下に、共用体の fStopOnOtherSide メンバーのみが存在します。 - D62AEDFA-57EA-11ce-A964-00AA006C3706
RPC マーシャリングされたデータとデバッグ操作コードが受信側に渡されるかどうかを判断します。 共用体のすべてのメンバーは以下に存在しますが、 fStopOnOtherSide を除きます。 -
fStopOnOtherSide
-
TRUE の場合、デバッガーによって単一のステップ実行が実行され、サーバーからステップ アウトし、もう一方の側に到達したら実行を続行する必要があります。 それ以外の場合、単一のステップ実行は実行されず、デバッガーの実行は反対側で停止します。
-
wDebuggingOpCode
-
一連の操作の 1 つを指定できる 値。 wDebuggingOpCode は、次のいずれかの値を受け取ることができます。
値 説明 - 0x0000
何も実行しません。 - 0x0001
設定した場合、単一ステップセマンティクスは TRUE に設定されている場合、fStopOnOtherSide と同じです。 -
cExtent
-
パディング。 使用しないでください。
-
padding
-
パディング。 使用しないでください。
-
cb
-
rgbData のデータのサイズ (バイト単位)。
-
guidExtent
-
rgbData 内のデータの種類を決定する GUID。 guidExtent は、次のいずれかの値を受け取ることができます。
値 説明 - 53199051-57EB-11ce-A964-00AA006C3706
rgbData はマーシャリングされたインターフェイス ポインターです。 -
rgbData
-
クライアント デバッガーとサーバー デバッガーの間で RPC マーシャリングされた COM データを渡すために使用される BYTE バッファー。 rgbData の内容は、guidExtent の GUID によって決まります。
guidExtent 値 rgbData の内容 53199051-57EB-11ce-A964-00AA006C3706 CoMarshalInterface を呼び出した結果のマーシャリングされたインターフェイス ポインター。 マーシャリングされたポインターは、 CoUnmarshalInterface を使用して対応するインターフェイス ポインターに変換されます。
注釈
この構造体のこのメンバーは 1 バイトのアラインメントを持ち、常にリトル エンディアンバイト順に送信されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダー |
|