共用方式為


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 偵錯時,COM 才會在接收者上引發用戶端或伺服器通知。

verMajor

資料格式規格的主要版本號碼。

verMinor

資料格式規格的次要版本號碼。

cbRemaining

包含 cbRemaining的位元組數目,後面接著這個 結構。

guidSemantic

GUID,決定下列聯集的成員。 guidSemantic 可以接受下列其中一個值:

意義
9CADE560-8F43-101A-B07B-00DD01113F11
判斷偵錯工具是否要執行單一逐步執行。 以下只有等位的 fStopOnOtherSide 成員存在。
D62AEDFA-57EA-11ce-A964-00AA006C3706
判斷 RPC 封送處理的資料和偵錯作業碼是否傳遞至接收者。 聯集的所有成員都存在於下方,但 fStopOnOtherSide除外。

fStopOnOtherSide

如果 為 TRUE,偵錯工具會執行單一逐步執行,而且它應該跳離伺服器,並在到達另一端後繼續執行。 否則,不會執行單一逐步執行,而且偵錯工具執行會在另一端停止。

wDebuggingOpCode

值,允許指定一系列作業的其中一個。 wDebuggingOpCode 可以接受下列其中一個值:

意義
0x0000
無作業。
0x0001
如果設定,當設定為TRUE時,單一步驟語意與fStopOnOtherSide相同。

cExtent

填充。 請勿使用。

padding

填充。 請勿使用。

cb

rgbData 中資料的大小,以位元組為單位

guidExtent

GUID,決定rgbData中的資料類型。 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 [僅限桌面應用程式]
標頭
N/A

另請參閱

ORPC_DBG_ALL

ORPC_INIT_ARGS

DllDebugObjectRPCHook

IOrpcDebugNotify