CONTAINING_RECORD (Windows Embedded CE 6.0)
1/6/2010
This macro returns the base address of an instance of a structure of a specified type if it has the address of a member within the containing structure.
Syntax
PCHAR CONTAINING_RECORD(
PCHAR Address,
TYPE Type,
PCHAR Field
);
Parameters
- Address
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, for example, type IRP.
- Field
The name of the field pointed to by Address contained in a structure of type Type.
Return Value
Returns a pointer to the base of the structure containing Field.
Remarks
This macro is 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.
A driver that calls this macro can be running at any IRQ level as long, as the structure is resident. If a page fault might occur, callers must be at or below IRQ level APC_LEVEL.
Requirements
Header | Wdm.h or Ntddk.h |
Windows Embedded CE | Windows CE .NET 4.0 and later |
See Also
Reference
Network Driver Macros
NdisInterlockedInsertHeadList
NdisInterlockedRemoveHeadList
NdisInterlockedInsertTailList
NdisAllocateSpinLock