winnt.h) (結構IMAGE_ENCLAVE_CONFIG32
定義執行 32 位 Windows 之系統的記憶體保護區設定格式。
語法
typedef struct _IMAGE_ENCLAVE_CONFIG32 {
DWORD Size;
DWORD MinimumRequiredConfigSize;
DWORD PolicyFlags;
DWORD NumberOfImports;
DWORD ImportList;
DWORD ImportEntrySize;
BYTE FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
BYTE ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
DWORD ImageVersion;
DWORD SecurityVersion;
DWORD EnclaveSize;
DWORD NumberOfThreads;
DWORD EnclaveFlags;
} IMAGE_ENCLAVE_CONFIG32, *PIMAGE_ENCLAVE_CONFIG32;
成員
Size
IMAGE_ENCLAVE_CONFIG32 結構的大小,以位元組為單位。
MinimumRequiredConfigSize
映射載入器必須能夠處理的 IMAGE_ENCLAVE_CONFIG32 結構大小下限,才能使用記憶體保護區。 此成員可讓記憶體保護區通知舊版映射載入器,映像載入器可以安全地載入記憶體保護區,並忽略新增至 IMAGE_ENCLAVE_CONFIG32 的選擇性成員,以供更新版本的記憶體保護區使用。 如果映像載入器可以處理的 IMAGE_ENCLAVE_CONFIG32 大小小於 MinimumRequiredConfigSize,則記憶體保護區無法安全地執行。
如果 MinimumRequiredConfigSize 為零,則影像載入器必須能夠處理的 IMAGE_ENCLAVE_CONFIG32 結構大小下限,才能讓記憶體保護區成為可用記憶體保護區的假設為結構的大小,並包含 MinimumRequiredConfigSize 成員。
PolicyFlags
旗標,指出記憶體保護區是否允許偵錯。
值 | 意義 |
---|---|
IMAGE_ENCLAVE_POLICY_DEBUGGABLE0x00000001 |
記憶體保護區允許偵錯。 |
0x00000000 |
記憶體保護區不允許偵錯。 |
NumberOfImports
ImportList 成員指向之影像數位中的影像數目。
ImportList
記憶體保護區映像可匯入之影像數位的相對虛擬位址,以及每個影像的身分識別資訊。
ImportEntrySize
ImportList 成員指向之影像數位中每個影像的大小。
FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH]
指派給記憶體保護區之內存保護區作者的家族標識碼。
ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH]
記憶體保護區作者指派給記憶體保護區的影像標識碼。
ImageVersion
指派給記憶體保護區之內存保護區作者的版本號碼。
SecurityVersion
指派給記憶體保護區之內存保護區作者的安全性版本號碼。
EnclaveSize
記憶體保護區之私人位址範圍的預期虛擬大小,以位元組為單位。
NumberOfThreads
可在記憶體保護區內建立的線程數目上限。
EnclaveFlags
旗標,指出映像是否適合作為記憶體保護區中的主要映像。
值 | 意義 |
---|---|
IMAGE_ENCLAVE_FLAG_PRIMARY_IMAGE0x00000001 |
映像適合用來作為記憶體保護區中的主要映像。 |
0x00000000 |
映像不適合作為記憶體保護區中的主要映像。 |
備註
IMAGE_ENCLAVE_CONFIG 結構會定義為執行 32 位 Windows 之系統上IMAGE_ENCLAVE_CONFIG32結構的另一個名稱。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 10 版本 1709 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2016 [僅限傳統型應用程式] |
標頭 | winnt.h |