heise233
驱动牛犊
驱动牛犊
  • 注册日期2007-05-21
  • 最后登录2007-06-26
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
阅读:1746回复:6

如何传递事件句柄

楼主#
更多 发布于:2007-06-12 18:28
我在应用程序中创建了一个事件:
m_hEvent = CreateEvent(NULL, FALSE, FALSE,NULL); //创建事件
 DeviceIoControl(StartHandel, IOCtrl_SETHANDLE, &m_hEvent,
 0, NULL, 0, &nBytesRead, NULL)
在驱动中:
case IOCtrl_SETHANDLE:
    g_hEvent = (HANDLE)irpStack->Parameters.DeviceIoControl.Type3InputBuffer;
可是得不到事件句柄,消息传递没问题,g_hEvent 却始终是空的,这是为什么呢

最新喜欢:

wingmanwingma...
liyunch
驱动小牛
驱动小牛
  • 注册日期2001-06-28
  • 最后登录2014-09-05
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望134点
  • 贡献值0点
  • 好评度94点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-06-13 10:12
注意是Buffered_IO还是direct_io.
driverdance
驱动牛犊
驱动牛犊
  • 注册日期2007-04-18
  • 最后登录2007-08-13
  • 粉丝0
  • 关注0
  • 积分640分
  • 威望65点
  • 贡献值0点
  • 好评度64点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-13 10:52
try:
DeviceIoControl(StartHandel, IOCtrl_SETHANDLE, m_hEvent,
 0, NULL, 0, &nBytesRead, NULL)
承接WDM和hook的项目。
heise233
驱动牛犊
驱动牛犊
  • 注册日期2007-05-21
  • 最后登录2007-06-26
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-06-13 11:59
driverdance:
DeviceIoControl(StartHandel, IOCtrl_SETHANDLE, m_hEvent,
 0, NULL, 0, &nBytesRead, NULL)

----->试过了,不灵。。。
liyunch:
注意是Buffered_IO还是direct_io.

---------->我刚学文件过滤,不知道这有什么影响,清说的详细点好么
driverdance
驱动牛犊
驱动牛犊
  • 注册日期2007-04-18
  • 最后登录2007-08-13
  • 粉丝0
  • 关注0
  • 积分640分
  • 威望65点
  • 贡献值0点
  • 好评度64点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-06-13 15:10
IRP_MJ_DEVICE_CONTROL根据IoControlCode的值来确定使用哪种buffering methods
承接WDM和hook的项目。
heise233
驱动牛犊
驱动牛犊
  • 注册日期2007-05-21
  • 最后登录2007-06-26
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-06-13 15:19
谢谢诸位大虾,已经搞定.
hyzimbtb
驱动牛犊
驱动牛犊
  • 注册日期2004-08-27
  • 最后登录2010-11-10
  • 粉丝2
  • 关注0
  • 积分387分
  • 威望216点
  • 贡献值0点
  • 好评度45点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-12-19 08:53
也碰到这个问题,明白了怎么回事
游客

返回顶部