ORPC_DBG_ALL结构

ORPC_DBG_ALL 结构用于将参数传递给 IOrpcDebugNotify 接口的方法。

注意

IOrpcDebugNotify 接口的每个方法都使用以下成员的不同组合。 如果成员未指示为方法使用,则传递给该方法时该成员未定义。

语法

typedef struct ORPC_DBG_ALL {
  BYTE              *pSignature;
  RPCOLEMESSAGE     *pMessage;
  const IID         *refiid;
  IRpcChannelBuffer *pChannel;
  IUnknown          *pUnkProxyMgr;
  void              *pInterface;
  IUnknown          *pUnkObject;
  HRESULT           hresult;
  void              *pvBuffer;
  ULONG             *cbBuffer;
  ULONG             *lpcbBuffer;
  void              *reserved;
} ORPC_DBG_ALL, *LPORPC_DBG_ALL;

成员

pSignature

指向 BYTE 缓冲区的指针,其中包含:

  • 前四个字节:ASCII 字符“MARB”,用于增加内存顺序。
  • 接下来 16 个字节:标识正在调用的通知的 GUID 。 它包含以下项之一:
    1. ClientGetBufferSize:9ED14F80-9673-101A-B07B-00DD01113F11
    2. ClientFillBuffer:D A45F3E0-9673-101A-B07B-00DD01113F11
    3. ClientNotify:4F60E540-9674-101A-B07B-00DD01113F11
    4. ServerNotify:1084FA00-9674-101A-B07B-00DD01113F11
    5. ServerGetBufferSize:22080240-9674-101A-B07B-00DD01113F11
    6. ServerFillBuffer:2FC09500-9674-101A-B07B-00DD01113F11
  • 接下来的四个字节:保留供将来使用。

注意

IOrpcDebugNotify 接口的所有方法使用。

pMessage

指向包含 RPC 数据封送信息的 RPCOLEMESSAGE 结构的指针。

refiid

指向 IOrpcDebugNotify 接口的 IID 的指针。

pChannel

指向服务器上 COM RPC 通道实现的 IRpcChannelBuffer 接口的指针。

注意

ServerFillBufferServerGetBufferSizeServerNotify 方法使用。

pUnkProxyMgr

指向此调试器调用中涉及的 对象的 IUnknown 接口的指针。 可能为 NULL,但这会减少调试器功能。

注意

ClientFillBufferClientGetBufferSizeClientNotify 方法使用。

pInterface

指向将由此 RPC 调用的方法的 COM 接口的指针。 不得为 NULL

注意

ServerFillBufferServerGetBufferSizeServerNotify 方法使用。

pUnkObject

必须为 NULL

注意

ServerFillBufferServerGetBufferSizeServerNotify 方法使用。

hresult

此成员对以下每个通知的用途发生更改:

ClientGetBufferSize:客户端调试器将传输到服务器调试器的字节数。 如果为零,则无需传输任何信息。

ClientNotify:最后一个 RPC 的 HRESULT

ServerGetBufferSize:客户端调试器将传输到服务器调试器的字节数。 如果为零,则无需传输任何信息。

注意

ClientGetBufferSizeClientNotifyServerGetBufferSize 方法使用。

pvBuffer

指向包含 RPC 封送调试信息的 ORPC_DBG_BUFFER 结构的指针。 如果 cbBuffer 为零,则为未定义。

注意

ClientFillBufferClientNotifyServerFillBufferServerNotify 方法使用。

cbBuffer

pvBuffer 指向的数据的长度(以字节为单位)。

注意

ClientFillBufferClientNotifyServerFillBufferServerNotify 方法使用。

lpcbBuffer

客户端调试器将传输到服务器调试器的字节数。 如果为零,则无需传输任何信息。 此值取代以 hresult 为单位返回的值。

注意

ClientFillBufferClientGetBufferSize 方法使用。

reserved

保留。 请勿使用。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
不适用

请参阅

ORPC_DBG_BUFFER

ORPC_INIT_ARGS

DllDebugObjectRPCHook

IOrpcDebugNotify