提供判斷已開啟區段物件的基底位址、大小、授與存取權和配置的功能。
語法
NTSTATUS NTAPI NtQuerySection (
_In_ HANDLE SectionHandle,
_In_ SECTION_INFORMATION_CLASS SectionInformationClass,
_Out_writes_bytes_(SectionInformationLength) PVOID SectionInformation,
_In_ SIZE_T SectionInformationLength,
_Out_opt_ PSIZE_T ReturnLength
)
參數
SectionHandle [in]
區段物件的開啟控制碼。
SectionInformationClass [in]
要擷取資訊的區段資訊類別。
SectionInformation [out]
接收指定資訊的緩衝區指標。 緩衝區的格式和內容取決於指定的區段類別。
SectionInformationLength [in]
指定區段資訊緩衝區的位元組長度。
ReturnLength [out]
選擇性指標,如果指定,則會接收放置在區段資訊緩衝區中的位元組數目。
傳回值
NTSTATUS 程式碼。 如需詳細資訊,請參閱 使用 NTSTATUS 值。
備註
此函式沒有相關聯的匯入程式庫或標頭檔;您必須使用 LoadLibrary 和 GetProcAddress 函式呼叫它。 API 會從 ntdll.dll 匯出。
SectionInformation參數的類型PSECTION_BASIC_INFORMATION
typedef struct _SECTIONBASICINFO {
PVOID BaseAddress;
ULONG AllocationAttributes;
LARGE_INTEGER MaximumSize;
} SECTION_BASIC_INFORMATION, *PSECTION_BASIC_INFORMATION;
PVOID BaseAddress
如果區段是以 區段為基礎,則為區段的基底虛擬位址。
ULONG AllocationAttributes
配置屬性旗標。
| 旗標 | 值 | 描述 |
|---|---|---|
| SEC_BASED | 0x200000 | 區段是以 區段為基礎。 |
| SEC_FILE | 0x800000 | 區段是由資料檔案所支援。 |
| SEC_RESERVE | 0x4000000 | 區段的所有頁面一開始都設定為保留狀態。 |
| SEC_COMMIT | 0x8000000 | 區段的所有頁面一開始都設定為已認可的狀態。 |
| SEC_IMAGE | 0x1000000 | 區段已對應為可執行檔影像檔。 |
LARGE_INTEGER MaximumSize
以位元組為單位的區段大小上限。
規格需求
| 需求 | 值 |
|---|---|
| DLL | ntdll.dll |