MmGetMdlVirtualAddress 宏 (wdm.h)
MmGetMdlVirtualAddress 宏返回 MDL 描述的缓冲区的基本虚拟地址。
语法
PVOID
MmGetMdlVirtualAddress (
_In_ PMDL Mdl
)
参数
[in] Mdl
指向 MDL 的指针,该 MDL 描述要返回其初始虚拟地址的缓冲区。
返回值
无
备注
MmGetMdlVirtualAddress 返回 MDL 的起始虚拟地址。
MmGetMdlVirtualAddress 返回在当前线程上下文中不一定有效的虚拟地址。 较低级别的驱动程序不应尝试使用返回的虚拟地址来访问内存,尤其是在用户内存空间中。
可将用作 MDL 中物理地址项的索引的返回地址输入到 MapTransfer 中。
MmGetMdlVirtualAddress 的调用方可在任何 IRQL 上运行。 通常,调用方在 = DISPATCH_LEVEL 的 IRQL 上运行,因为通常会调用此例程来获取 MapTransfer的 CurrentVa 参数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 |
标头 | wdm.h |
IRQL | 任何级别 (请参阅备注) |
DDI 符合性规则 | MdlAfterReqCompletedIntIoctlA (kmdf) 、 MdlAfterReqCompletedIoctlA (kmdf) 、 MdlAfterReqCompletedReadA (kmdf) 、 MdlAfterReqCompletedWriteA (kmdf) |