winbase.h) (ACTCTX_SECTION_KEYED_DATA結構
FindActCtxSectionString和FindActCtxSectionGuid函式會使用ACTCTX_SECTION_KEYED_DATA結構來傳回啟用內容資訊以及 GUID 或 32 位整數標記啟用內容區段。
語法
typedef struct tagACTCTX_SECTION_KEYED_DATA {
ULONG cbSize;
ULONG ulDataFormatVersion;
PVOID lpData;
ULONG ulLength;
PVOID lpSectionGlobalData;
ULONG ulSectionGlobalDataLength;
PVOID lpSectionBase;
ULONG ulSectionTotalLength;
HANDLE hActCtx;
ULONG ulAssemblyRosterIndex;
ULONG ulFlags;
ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
} ACTCTX_SECTION_KEYED_DATA, *PACTCTX_SECTION_KEYED_DATA;
成員
cbSize
啟用內容索引鍵資料結構的大小,以位元組為單位。
ulDataFormatVersion
數位,指出在找到索引鍵之區段中的資料格式。 用戶端應該確認資料格式版本如預期般運作,而不是嘗試解譯不熟悉的資料格式值。 只有在需要變更區段資料格式的主要非回溯相容變更時,才會變更此數位。 目前的格式版本為 1。
lpData
指向與區段識別碼和索引鍵相關聯的重新導向資料指標。
ulLength
lpData所參考之結構中的位元組數目。 請注意,資料結構會隨著時間成長;請勿存取超出 ulLength的實例資料中的成員。
lpSectionGlobalData
傳回區段特定資料結構的指標,這是找到金鑰之啟用內容區段的全域指標。 其解譯取決於所要求的區段識別碼。
ulSectionGlobalDataLength
lpSectionGlobalData所參考之全域資料區塊中的位元組數目。
請注意,資料結構會隨著時間成長,而且您可能會收到舊的格式啟用內容資料區塊;不會存取超出 ulSectionGlobalDataLength之全域資料區段中的成員。
lpSectionBase
指向找到索引鍵之區段基底的指標。 某些實例資料包含相對於區段基底位址的位移,在此情況下會使用這個指標值。
ulSectionTotalLength
從 lpSectionBase開始,整個區段的位元組數目。 可用來確認指定為相對於區段基底的位移/長度組,完全包含在 區段中。
hActCtx
處理找到金鑰的啟用內容。 首先,會搜尋執行緒的作用中啟用內容,後面接著進程預設啟用內容,然後搜尋系統相容的預設啟用內容。 這個成員會指出哪些啟用內容包含要求的區段和金鑰。 只有在傳遞FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX旗標時,才會傳回這個值。
請注意,當傳回此情況時,呼叫端必須在啟動內容控制碼上呼叫 ReleaseActCtx () ,當啟動內容的其他所有參考都已釋放時,傳回給釋放系統資源。
ulAssemblyRosterIndex
啟用內容中提供重新導向資訊的元件基數。 此值可以呈現給 QueryActCtxW ,以取得參與元件的詳細資訊。
ulFlags
AssemblyMetadata
備註
呼叫端應該初始化 ACTCTX_SECTION_KEYED_DATA 結構,例如:
「ACTCTX_SECTION_KEYED_DATA askd = { sizeof (askd) };」
會將所有成員初始化為零/Null,但已正確設定的大小欄位除外。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
標頭 | winbase.h (包含 Windows.h) |