Windows Driver Kit: Kernel-Mode Driver Architecture
CONTAINING_RECORD
The CONTAINING_RECORD macro returns the base address of an instance of a structure given the type of the structure and the address of a field within the containing structure.
PCHAR
CONTAINING_RECORD(
IN PCHAR Address,
IN TYPE Type,
IN PCHAR Field
);
Parameters
- Address
- A pointer to a field in an instance of a structure of type Type.
- Type
- The name of the type of the structure whose base address is to be returned.
- Field
- The name of the field pointed to by Address and which is contained in a structure of type Type.
Return Value
Returns the address of the base of the structure containing Field.
Comments
Called to determine the base address of a structure whose type is known when the caller has a pointer to a field inside such a structure. This macro is useful for symbolically accessing other fields in a structure of known type.
Requirements
IRQL: Any level
Headers: Declared in Ntdef.h. Include Wdm.h or Ntddk.h.
See Also
FIELD_OFFSET