EXT_TYPED_DATA structure (wdbgexts.h)
The EXT_TYPED_DATA structure is passed to and returned from the DEBUG_REQUEST_EXT_TYPED_DATA_ANSI Request operation. It contains the input and output parameters for the operation as well as specifying which particular suboperation to perform.
Syntax
typedef struct _EXT_TYPED_DATA {
IN EXT_TDOP Operation;
IN ULONG Flags;
IN DEBUG_TYPED_DATA InData;
OUT DEBUG_TYPED_DATA OutData;
IN ULONG InStrIndex;
IN ULONG In32;
OUT ULONG Out32;
IN ULONG64 In64;
OUT ULONG64 Out64;
OUT ULONG StrBufferIndex;
IN ULONG StrBufferChars;
OUT ULONG StrCharsNeeded;
IN OUT ULONG DataBufferIndex;
IN ULONG DataBufferBytes;
OUT ULONG DataBytesNeeded;
OUT HRESULT Status;
ULONG64 Reserved[8];
} EXT_TYPED_DATA, *PEXT_TYPED_DATA;
Members
Operation
Specifies which suboperation the DEBUG_REQUEST_EXT_TYPED_DATA_ANSI Request operation should perform. The interpretation of some of the other members depends on Operation. For a list of possible suboperations, see EXT_TDOP.
Flags
Specifies the bit flags describing the target's memory in which the data resides. If no flags are present, the data is considered to be in virtual memory. One of the following flags may be present:
Flag | Description |
---|---|
EXT_TDF_PHYSICAL_DEFAULT | The typed data is in physical memory, and this physical memory uses the default memory caching. |
EXT_TDF_PHYSICAL_CACHED | The typed data is in physical memory, and this physical memory is cached. |
EXT_TDF_PHYSICAL_UNCACHED | The typed data is in physical memory, and this physical memory is uncached. |
EXT_TDF_PHYSICAL_WRITE_COMBINED | The typed data is in physical memory, and this physical memory is write-combined. |
InData
Specifies typed data to be used as input to the operation. For details about this structure, see DEBUG_TYPED_DATA.
The interpretation of InData depends on the value of Operation.
OutData
Receives typed data as output from the operation. Any suboperation that returns typed data to OutData initially copies the contents of InData to OutData, then modifies OutData in place, so that the input parameters in InData are also present in OutData. For details about this structure, see DEBUG_TYPED_DATA.
The interpretation of OutData depends on the value of Operation.
InStrIndex
Specifies the position of an ANSI string to be used as input to the operation. InStrIndex can be zero to indicate that the input parameters do not include an ANSI string.
The position of the string is relative to the base address of this EXT_TYPED_DATA structure. The string must follow this structure, so InStrIndex must be greater than the size of this structure. The string is part of the input to the operation and InStrIndex must be smaller than InBufferSize, the size of the input buffer passed to Request.
The interpretation of the string depends on the value of Operation.
In32
Specifies a 32-bit parameter to be used as input to the operation.
The interpretation of In32 depends on the value of Operation.
Out32
Receives a 32-bit value as output from the operation.
The interpretation of Out32 depends on the value of Operation.
In64
Specifies a 64-bit parameter to be used as input to the operation.
The interpretation of In64 depends on the value of Operation.
Out64
Receives a 64-bit value as output from the operation.
The interpretation of Out64 depends on the value of Operation.
StrBufferIndex
Specifies the position to return an ANSI string as output from the operation. StrBufferIndex can be zero if no ANSI string is to be received from the operation.
The position of the string is relative to the base address of the returned EXT_TYPED_DATA structure. The string must follow the structure, so StrBufferIndex must be greater than the size of this structure. The string is part of the output from the suboperation, and StrBufferIndex plus StrBufferChars must be smaller than OutBufferSize, the size of the output buffer passed to Request.
The interpretation of the string depends on the value of Operation.
StrBufferChars
Specifies the size in characters of the ANSI string buffer specified by StrBufferIndex.
StrCharsNeeded
Receives the number of characters needed by the string buffer specified by StrBufferIndex.
DataBufferIndex
Set to zero.
DataBufferBytes
Set to zero.
DataBytesNeeded
Set to zero,
Status
Receives the status code returned by the operation. This is the same value returned by Request.
Reserved[8]
Set to zero.
Remarks
The members of this structure are used as the input and output parameters to the DEBUG_REQUEST_EXT_TYPED_DATA_ANSI Request operation. The interpretation of most of the parameters depends on the particular suboperation being performed, as specified by the Operation member.
This structure can optionally specify additional data--using the members InStrIndex and StrBufferIndex--that is included with the structure. This additional data is specified relative to the address of the instance of this structure. When used with the DEBUG_REQUEST_EXT_TYPED_DATA_ANSI Request operation, the additional data is included in the InBuffer and OutBuffer (as appropriate) and should be included in the size of these two buffers.
Requirements
Requirement | Value |
---|---|
Header | wdbgexts.h (include WdbgExts.h, DbgEng.h) |
See also
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for