Export (0) Print
Expand All

ACTCTX_SECTION_KEYED_DATA structure

The ACTCTX_SECTION_KEYED_DATA structure is used by the FindActCtxSectionString and FindActCtxSectionGuid functions to return the activation context information along with either the GUID or 32-bit integer-tagged activation context section.

Syntax


typedef struct tagACTCTX_SECTION_KEYED_DATA {
  ULONG  cbSize;
  ULONG  ulDataFormatVersion;
  PVOID  lpData;
  ULONG  ulLength;
  PVOID  lpSectionGlobalData;
  ULONG  ulSectionGlobalDataLength;
  PVOID  lpSectionBase;
  ULONG  ulSectionTotalLength;
  HANDLE hActCtx;
  HANDLE ulAssemblyRosterIndex;
} ACTCTX_SECTION_KEYED_DATA, *PACTCTX_SECTION_KEYED_DATA;

Members

cbSize

The size, in bytes, of the activation context keyed data structure.

ulDataFormatVersion

Number that indicates the format of the data in the section where the key was found. Clients should verify that the data format version is as expected rather than trying to interpret the values of unfamiliar data formats. This number is only changed when major non-backward-compatible changes to the section data formats need to be made. The current format version is 1.

lpData

Pointer to the redirection data found associated with the section identifier and key.

ulLength

Number of bytes in the structure referred to by lpData. Note that the data structures grow over time; do not access members in the instance data that extend beyond ulLength.

lpSectionGlobalData

Returned pointer to a section-specific data structure which is global to the activation context section where the key was found. Its interpretation depends on the section identifier requested.

ulSectionGlobalDataLength

Number of bytes in the section global data block referred to by lpSectionGlobalData.

Note that the data structures grow over time and you may receive an old format activation context data block; do not access members in the section global data that extend beyond ulSectionGlobalDataLength.

lpSectionBase

Pointer to the base of the section where the key was found. Some instance data contains offsets relative to the section base address, in which case this pointer value is used.

ulSectionTotalLength

Number of bytes for the entire section starting at lpSectionBase. May be used to verify that offset/length pairs, which are specified as relative to the section base are wholly contained in the section.

hActCtx

Handle to the activation context where the key was found. First, the active activation context for the thread is searched, followed by the process-default activation context and then the system-compatible-default-activation context. This member indicates which activation context contained the section and key requested. This is only returned if the FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX flag is passed.

Note that when this is returned, the caller must call ReleaseActCtx() on the activation context handle returned to release system resources when all other references to the activation context have been released.

ulAssemblyRosterIndex

Cardinal number of the assembly in the activation context that provided the redirection information found. This value can be presented to QueryActCtxW for more information about the contributing assembly.

Remarks

Callers should initialize the ACTCTX_SECTION_KEYED_DATA structure as such:

"ACTCTX_SECTION_KEYED_DATA askd = { sizeof(askd) };"

which initializes all members to zero/null except the size field which is set correctly.

Requirements

Minimum supported client

Windows XP [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]

Header

Winbase.h (include Windows.h)

See also

FindActCtxSectionString
FindActCtxSectionGuid
ACTCTX

 

 

Community Additions

ADD
Show:
© 2014 Microsoft