用METHOD_IN_DIRECT方式时,驱动是通过PVOID MmGetSystemAddressForMdlSafe( IN PMDL Mdl, IN MM_PAGE_PRIORITY Priority );得到输入的数据的吗?例如:in = MmGetSystem...
全文
回复(8) 2005-03-20 18:11 来自版块 - ABC初学者
表情
arthurtuMETHOD_IN_DIRECT or METHOD_OUT_DIRECT For these transfer types, IRPs supply a pointer to a buffer at Irp->AssociatedIrp.SystemBuffer. T...(2005-03-21 21:33)
八木(bamu)给分了 arthurtu是对的(2005-03-21 18:19)
八木(bamu)我看的是科欣翻译组的 programme wdm in microsofe 那本书,上面说的in_direct 就是锁定输入地址,创建输出buffer out_direct 是锁定输出,创建输入, 不过,如果照你说的,那么这两种方式又有什么不同的地方呢? 那ne...(2005-03-21 17:05)
arthurtu不管是METHOD_IN_DIRET还是METHOD_OUT_DIRECT,都是将in buffer的内容拷贝到systembuffer指向的内核空间,把out buffer所在的内存锁住然后创建一个MDL来描述之,即Irp->MdlAddress 因此,如果是得到输...(2005-03-21 13:11)
bmyyyud哎呀,好像不行啊~~~ 用户区要映射的内存加锁了吗?还有MDL建立的正确吗?如一切正常,这个函数就是返回的核心中映射的用户区的东东的指针(2005-03-21 10:18)
八木(bamu)哎呀,好像不行啊~~~(2005-03-20 18:52)
八木(bamu)试 试,还是不大懂你说的啊 MmGetSystemAddressForMdlSafe不是得到了mdl到系统空间的影射吗? 驱动不都是在系统空间里面吗?(2005-03-20 18:47)
aiwadgj用METHOD_IN_DIRECT方式时,驱动是通过 PVOID MmGetSystemAddressForMdlSafe( IN PMDL Mdl, IN MM_PAGE_PRIORITY Priority );得到输入的数据的吗? 例如: in...(2005-03-20 18:30)

返回顶部