Partager via


ORPC_DBG_BUFFER structure

La structure ORPC_DBG_BUFFER est le format de mémoire tampon utilisé pour marshaler les données RPC sur les méthodes de l’interface IOrpcDebugNotify .

Syntaxe

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;

Membres

alwaysOrSometimes

Valeur qui contrôle la génération du débogueur. alwaysOrSometimes peut avoir l’une des valeurs suivantes :

Valeur Signification
ORPC_DEBUG_ALWAYS
0x00000000
S’il est défini, COM déclenche toujours la notification du client ou du serveur sur le récepteur.
ORPC_DEBUG_IF_HOOK_ENABLED
0x00000001
S’il est défini, COM déclenche uniquement la notification client ou serveur sur le récepteur si le débogage COM a été activé en appelant DllDebugObjectRPCHook dans ce processus avec fTrace défini sur TRUE.

verMajor

Numéro de version principale de la spécification de format de données.

verMinor

Numéro de version secondaire de la spécification de format de données.

cbRemaining

Nombre d’octets, y compris cbRemaining, qui suivent dans cette structure.

guidSemantic

GUID qui détermine les membres de l’union présents ci-dessous. guidSemantic peut prendre l’une des valeurs suivantes :

Valeur Signification
9CADE560-8F43-101A-B07B-00DDD01113F11
Détermine si un seul pas à pas doit être effectué par le débogueur. Seul le membre fStopOnOtherSide de l’union est présent ci-dessous.
D62AEDFA-57EA-11ce-A964-00AA006C3706
Détermine si les données marshalées RPC et les opcodes de débogage sont passés au récepteur. Tous les membres de l’union sont présents ci-dessous, à l’exception de fStopOnOtherSide.

fStopOnOtherSide

Si la valeur est TRUE, un seul pas à pas est effectué par le débogueur et doit sortir du serveur et poursuivre l’exécution une fois l’autre côté atteint. Sinon, l’exécution d’un seul pas à pas n’est pas effectuée et l’exécution du débogueur s’arrête de l’autre côté.

wDebuggingOpCode

Valeur qui permet de spécifier l’une des séries d’opérations. wDebuggingOpCode peut prendre l’une des valeurs suivantes :

Valeur Signification
0x0000
Pas d'opération.
0x0001
Si elle est définie, la sémantique à étape unique est identique à fStopOnOtherSide lorsqu’elle est définie sur TRUE.

cExtent

Rembourrage. Ne pas utiliser.

padding

Rembourrage. Ne pas utiliser.

cb

Taille, en octets des données dans rgbData.

guidExtent

GUID qui détermine le type de données dans rgbData. guidExtent peut prendre l’une des valeurs suivantes :

Valeur Signification
53199051-57EB-11ce-A964-00AA006C3706
rgbData est un pointeur d’interface marshalé.

rgbData

Mémoire tampon BYTE utilisée pour passer des données COM marshalées RPC entre les débogueurs client et serveur. Le contenu de rgbData est déterminé par le GUID dans guidExtent.

valeur guidExtent contenu rgbData
53199051-57EB-11ce-A964-00AA006C3706 Pointeur d’interface marshalé qui résulte de l’appel de CoMarshalInterface. Le pointeur marshalé est converti en pointeur d’interface correspondant à l’aide de CoUnmarshalInterface.

Notes

Ces membres de cette structure ont un alignement sur 1 octet et sont toujours transmis dans l’ordre d’octets little-endian.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
N/A

Voir aussi

ORPC_DBG_ALL

ORPC_INIT_ARGS

DllDebugObjectRPCHook

IOrpcDebugNotify