MmGetMdlPfnArray 巨集 (wdm.h)
MmGetMdlPfnArray 巨集會傳回與記憶體描述元清單 (MDL) 相關聯之實體頁碼數位數組開頭的指標。
語法
PPFN_NUMBER MmGetMdlPfnArray(
_In_ PMDL Mdl
);
參數
Mdl
MDL 的指標。
傳回值
MmGetMdlPfnArray 會傳回與 MDL 相關聯之實體頁碼陣列開頭的指標。
言論
MmGetMdlPfnArray 會傳回與 MDL 相關聯之實體頁碼陣列開頭的指標。
巨集定義:
#define MmGetMdlPfnArray(Mdl) ((PPFN_NUMBER)(Mdl + 1))
陣列中的項目數是 ADDRESS_AND_SIZE_TO_SPAN_PAGES(MmGetMdlVirtualAddress(Mdl),MmGetMdlByteCount(Mdl))。
每個陣列元素都是類型為 PFN_NUMBER 的整數值,其定義於Wdm.h 頭檔中,如下所示:
typedef ULONG PFN_NUMBER, *PPFN_NUMBER;
變更陣列的內容可能會導致難以診斷的細微系統問題。 我們建議您不要讀取或變更此陣列的內容。
對於可分頁記憶體,陣列的內容只適用於鎖定的緩衝區,MmProbeAndLockPages。
對於非分頁集區,陣列的內容僅適用於以 MmBuildMdlForNonPagedPool更新的 MDL、MmAllocatePagesForMdlEx或 MmAllocatePagesForMdl。
要求
要求 | 價值 |
---|---|
標頭 | wdm.h (包括 Wdm.h) |
IRQL | 任何層級 |
DDI 合規性規則 | MdlAfterReqCompletedIntIoctlA(kmdf),MdlAfterReqCompletedIoctlA(kmdf),MdlAfterReqCompletedReadA(kmdf),MdlAfterReqCompletedWriteA(kmdf) |