我想在驱动中分配10k的内存然后映射到应用程序,可是不知为什么得到的数据却不对,而在驱动中看到数据是对的,不明白怎么回事?我的应用程序映射部分如下所示:if (!DeviceIoControl(hDevice,P9054_IOCTL_801, bufInput,IOCTL_INB...
全文
回复(5) 2004-09-24 14:43 来自版块 - 内核编程
表情
kucy_zhou@163.c KMK: 谢谢!!! 我试试。你用的什么工具开发的,是kerneldriver么还是ddk? 我用的是ds不知道行不行?我分配内存和用内存,还有映射内存不是在一起做的,不知道有没有区别? (2004-09-28 10:50)
KMK试过了,可用的 ! PDBGTRAP_HEADER pHeader; pHeader = (PDBGTRAP_HEADER) ExAllocatePool( NonPagedPool, ...(2004-09-27 15:13)
kucy_zhou@163.cAllenZh : I.UserBuffer()是个指针我将它的地址指向UserSpaceAddress不对么,我在程序中这样写: *((PVOID *)(I.UserBuffer()))=UserSpaceAddress; 如果像你说的将UserSpaceAddre...(2004-09-27 14:54)
KMK抄别人的 !! inputBuffer = curIRPStack->Parameters.DeviceIoControl.Type3InputBuffer; outputBuffer = Irp->UserBuffe...(2004-09-26 23:17)
AllenZhI.UserBuffer()=UserSpaceAddress; 可能有问题: I.UserBuffer()是个指针,你应该将UserSpaceAddress的值copy到该指针,还有I.Information()应该设置为sizeof(UserSpaceAddress);(2004-09-26 09:44)

返回顶部