共用方式為


MmGetSystemAddressForMdl 宏 (wdm.h)

MmGetSystemAddressForMdl 例程已過時。 請改用 MmGetSystemAddressForMdlSafe

MmGetSystemAddressForMdl 是一個宏,會傳回 MDL 所描述之緩衝區的非分頁系統空間虛擬位址。 如果指定的 MDL 尚未對應至系統空間,它會將指定的 MDL 所描述的實體頁面對應至系統空間。

語法

PVOID MmGetSystemAddressForMdl(
   MDL
);

參數

[in] MDL

緩衝區的指標,其對應的基底虛擬位址要對應。

傳回值

備註

MmGetSystemAddressForMdl 會傳回基底系統空間虛擬位址,對應指定 MDL 所描述的實體頁面。

PIO 裝置的驅動程式會呼叫此例程,將 Irp-MdlAddress> 上的 MDL 所描述的虛擬位址範圍轉譯為系統空間位址範圍。

MDL 必須描述不可分頁的記憶體。 換句話說,輸入 MDL 必須描述 MmProbeAndLockPages 所傳回的已鎖定使用者空間緩衝區、 MmBuildMdlForNonPagedPool 所傳回的鎖定緩衝區,或配置自非分頁集區、連續記憶體或非快取記憶體的系統空間記憶體。

傳回的基位址與 MDL 中的虛擬位址位移相同。

視窗會發出錯誤檢查,如果嘗試對應至系統空間失敗。 因此,您應該改用 MmGetSystemAddressForMdlSafe) 。

規格需求

需求
最低支援的用戶端 已過時。 請改用 MmGetSystemAddressForMdlSafe。
目標平台 桌面
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)
IRQL IRQL <= DISPATCH_LEVEL

另請參閱

MmBuildMdlForNonPagedPool

MmGetSystemAddressForMdlSafe

MmProbeAndLockPages