shengws
驱动大牛
驱动大牛
  • 注册日期2002-03-08
  • 最后登录2010-06-21
  • 粉丝0
  • 关注0
  • 积分384分
  • 威望102点
  • 贡献值0点
  • 好评度37点
  • 原创分0分
  • 专家分0分
阅读:1385回复:14

20分求救

楼主#
更多 发布于:2002-07-26 17:33
驱动程序现在有一个消息要通知应用程序,请教该怎样实现?
 :D
喂,小孩,你的小JJ露出来了!
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2002-07-26 18:57
faint,讨论了好多遍了的。
可以用event。比如,在driver create一个event,app用waitforXXXObject函数等event
magicx
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2014-08-18
  • 粉丝1
  • 关注0
  • 积分-14分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-07-26 22:59

又来放分???

 :D
[color=red]大头鬼! :P[/color]
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-07-26 23:19
在驱动程序里面创建一个命名的事件,在应用程序里面打开和等待该事件,驱动程序通过触发该事件来通知应用程序
shengws
驱动大牛
驱动大牛
  • 注册日期2002-03-08
  • 最后登录2010-06-21
  • 粉丝0
  • 关注0
  • 积分384分
  • 威望102点
  • 贡献值0点
  • 好评度37点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-07-29 09:10
有没有现成的例子可供使用?如果有的话,请给我发信!
我的信箱shengws@163.net,多谢!
 :D
喂,小孩,你的小JJ露出来了!
beaveror
驱动中牛
驱动中牛
  • 注册日期2002-06-13
  • 最后登录2003-07-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-07-29 10:05
在驱动程序里面创建一个命名的事件,在应用程序里面打开和等待该事件,驱动程序通过触发该事件来通知应用程序


这样做不好。
只要能解决问题,就一定给分。 希望高手赐教!
beaveror
驱动中牛
驱动中牛
  • 注册日期2002-06-13
  • 最后登录2003-07-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-07-29 10:07
有没有现成的例子可供使用?如果有的话,请给我发信!
我的信箱shengws@163.net,多谢!
 :D


已经发了。
别忘了给分。
只要能解决问题,就一定给分。 希望高手赐教!
shengws
驱动大牛
驱动大牛
  • 注册日期2002-03-08
  • 最后登录2010-06-21
  • 粉丝0
  • 关注0
  • 积分384分
  • 威望102点
  • 贡献值0点
  • 好评度37点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-07-29 15:58
我刚看完你的代码:
我现在还是有点含糊,我是这样理解的:
KeSetEvent( pdx->pEvent, 2, FALSE);是设定事件的
pdx->pEvent在哪做的初始化?

switch( ControlCode)
{
case IOCTL_SECOND_SEND_EVENT:
hEvent = (HANDLE) IrpStack->Parameters.DeviceIoControl.Type3InputBuffer;
status = ObReferenceObjectByHandle(hEvent, GENERIC_ALL,
NULL, KernelMode,
(PVOID*)(&pdx->pEvent), NULL);
NULL, KernelMode,
(PVOID*)(&pdx->pEvent), NULL);
ObReferenceObjectByHandle是对事件进行访问的?
我现在还不清楚它的消息传递原理是什么样的,能不能用文字来说明一下?

是不是KeSetEvent设定事件,IOCTL_SECOND_SEND_EVENT用来触发事件?
我现在想这样做:
我读端口获得一个状态位,判断状态位去给应用程序发信息,应用程序通过接受这个信息来对指挥驱动下一步做什么事情。





 :D :D :D
喂,小孩,你的小JJ露出来了!
shengws
驱动大牛
驱动大牛
  • 注册日期2002-03-08
  • 最后登录2010-06-21
  • 粉丝0
  • 关注0
  • 积分384分
  • 威望102点
  • 贡献值0点
  • 好评度37点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-07-29 16:01
分我给了,希望能帮我把原理搞清楚,谢谢!!! :D
喂,小孩,你的小JJ露出来了!
beaveror
驱动中牛
驱动中牛
  • 注册日期2002-06-13
  • 最后登录2003-07-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-07-29 16:11
事件的初始化是在应用层完成的。
然后将事件的句柄传入wdm中,WDM对应用层的事件进行触发。
只要能解决问题,就一定给分。 希望高手赐教!
beaveror
驱动中牛
驱动中牛
  • 注册日期2002-06-13
  • 最后登录2003-07-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-07-29 16:14
我的一点东东,都是论坛大老:蛇豆豆,TOM_LYD教的。
只要能解决问题,就一定给分。 希望高手赐教!
denizen
驱动大牛
驱动大牛
  • 注册日期2001-12-30
  • 最后登录2012-05-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-07-29 16:14
分我给了,希望能帮我把原理搞清楚,谢谢!!! :D

赤裸裸。
Where there is a will, there is a road.
zydcat
驱动老牛
驱动老牛
  • 注册日期2001-12-06
  • 最后登录2006-04-12
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-07-29 16:17
有专栏文章讲这些的

自己找找
[color=red]肥虫虫[/color] [img]http://www.driverdevelop.com/forum/upload/bradley/2002-11-15_ig01.gif[/img]
beaveror
驱动中牛
驱动中牛
  • 注册日期2002-06-13
  • 最后登录2003-07-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-07-29 16:18
[quote]分我给了,希望能帮我把原理搞清楚,谢谢!!! :D

赤裸裸。 [/quote]

就是,就是,我都不好意思了。
 :P
只要能解决问题,就一定给分。 希望高手赐教!
gxjt
驱动老牛
驱动老牛
  • 注册日期2002-03-26
  • 最后登录2006-06-07
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-07-29 16:38
[quote
已经发了。
别忘了给分。 [/quote]
能不能也给我发一份,谢了.
[color=red] “阿弥陀佛,无上医王,舍此不求,是谓痴狂。” “一句弥陀,阿伽陀药,舍此不服,是谓大错。” 南无阿弥陀佛......[/color]
游客

返回顶部