次の方法で共有


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 内のデータの種類を決定する GUIDguidExtent は、次のいずれかの値を受け取ることができます。

説明
53199051-57EB-11ce-A964-00AA006C3706
rgbData はマーシャリングされたインターフェイス ポインターです。

rgbData

クライアント デバッガーとサーバー デバッガーの間で RPC マーシャリングされた COM データを渡すために使用される BYTE バッファー。 rgbData の内容は、guidExtentGUID によって決まります。

guidExtent 値 rgbData の内容
53199051-57EB-11ce-A964-00AA006C3706 CoMarshalInterface を呼び出した結果のマーシャリングされたインターフェイス ポインター。 マーシャリングされたポインターは、 CoUnmarshalInterface を使用して対応するインターフェイス ポインターに変換されます。

注釈

この構造体のこのメンバーは 1 バイトのアラインメントを持ち、常にリトル エンディアンバイト順に送信されます。

要件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
該当なし

関連項目

ORPC_DBG_ALL

ORPC_INIT_ARGS

DllDebugObjectRPCHook

IOrpcDebugNotify