驱动这样写的: case GET_EVENT: {   OBJECT_HANDLE_INFORMATION objHandleInfo;   HANDLE hEvent = *(HANDLE *)inputBuffer;   Irp->IoStatus.Status =Ob...
全文
回复(11) 2008-12-29 12:25 来自版块 - 文件系统(过滤)驱动程序开发
表情
vipfengxiao奇怪了 我在驱动给应用层发事件 编译 的是server2003版本 装在server2003机子上就蓝屏 装在XP上不蓝屏 不知道什么原因呢(2010-03-15 16:21)
vipfengxiao我在驱动中给共享内存拷贝数据就蓝屏(2010-03-13 09:53)
lee922@gmail.co应用程序使用共享内存的时候,需要在所使用的那个线程获得映射地址,然后再使用,如果在另一个线程使用共享内存还需要重新映射一次。(2009-11-18 16:21)
dreamsityDDK的例子默认是不会安装的。需要选择完全安装。(2008-12-30 18:34)
lovehunterboy按您的意思:那就是你没有正确把地址映射到app的空间吧,建议你把创建和映射共享内存在一个case里面处理。已修改。 我的outputBuffer=Irp->AssociatedIrp.SystemBuffer;IO方式是METHOD_BUFFERED; 通过显示:应用程序得...(2008-12-30 12:20)
troylees那就是你没有正确把地址映射到app的空间吧,建议你把创建和映射共享内存在一个case里面处理。 *((PVOID *)outputBuffer)不清楚你的outputBuffer是什么,正确的应该系 *((PVOID *)(pIrp->AssociatedIrp.Syste...(2008-12-29 23:04)
lovehunterboy出错的地方说的是非法访问地址(2008-12-29 18:29)
lovehunterboy谢谢您们的指点啊!我没找到这个例子啊!(2008-12-29 18:25)
troylees你的IOCTL使用什么缓冲方法,METHOD_BUFFERED? *((PVOID *)outputBuffer) = psharememory->UserBaseAddress; 确定正确返回给app? *((PVOID *)(pIrp->AssociatedIrp...(2008-12-29 18:20)
zhaock1.基本方法没有错,但是在case GET_EVENT里映射一次就可以,返回用户态的指针,用不着每次映射。你现在碰到的是什么错误,指针非法,还是内容不对。 2.你要实现什么功能,用2楼说得常见的方法不能满足你的需要,再考虑你目前的方法。不然尽量用标准的方法(2008-12-29 17:41)

返回顶部