CONTAINING_RECORD (Windows CE 5.0)

Send Feedback

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.

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 Values

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

OS Versions: Windows CE .NET 4.0 and later.
Header: Wdm.h or Ntddk.h.

See Also

NdisInterlockedInsertHeadList | NdisInterlockedRemoveHeadList | NdisInterlockedInsertTailList | NdisAllocateSpinLock

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.