daisyboy
驱动小牛
驱动小牛
  • 注册日期2002-10-24
  • 最后登录2012-05-21
  • 粉丝3
  • 关注0
  • 积分599分
  • 威望140点
  • 贡献值1点
  • 好评度56点
  • 原创分0分
  • 专家分0分
阅读:1097回复:3

谁帮我解决这个问题啊?驱动程序造成屏幕扇动!!(给20分)

楼主#
更多 发布于:2002-11-05 14:15
我在98下采用HOOK技术简单实现一个包过滤的驱动。由于是新手,还不明白怎么调用UNLOAD函数,因此这个函数就没写,也没有做UNHOOK。

在WIN32 API层采用CreateFile来创建设备,并通过设备对驱动进行控制。上层退出的时候关闭设备句柄(CloseHandle).

现在我的问题是,好象反复的创建和关闭几次设备后,屏幕会出现频扇!!初步认为是closehandle时没有在驱动层做相应的工作造成
的。

谁能告诉我,需要补充什么?

更关键是:怎么做?

我刚开始做驱动(个人兴趣)半懂不懂的。555555555555 :( :( :(
合作c/c++/ndis/pppoe/802.1x!
gjpland
驱动小牛
驱动小牛
  • 注册日期2001-09-13
  • 最后登录2011-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-11-05 14:20
我在98下采用HOOK技术简单实现一个包过滤的驱动。由于是新手,还不明白怎么调用UNLOAD函数,因此这个函数就没写,也没有做UNHOOK。

在WIN32 API层采用CreateFile来创建设备,并通过设备对驱动进行控制。上层退出的时候关闭设备句柄(CloseHandle).

现在我的问题是,好象反复的创建和关闭几次设备后,屏幕会出现频扇!!初步认为是closehandle时没有在驱动层做相应的工作造成
的。

谁能告诉我,需要补充什么?

更关键是:怎么做?

我刚开始做驱动(个人兴趣)半懂不懂的。555555555555 :( :( :(

你没有做Unhook动作一般CloseHandle是不会有什么问题的。
但是千万不能StopService否则肯定蓝屏
哦,没看到是98,上面说的是NT,98下,没做UNHOOK VXD是不能动态加载的只能做静态加载

[编辑 -  11/5/02 by  gjpland]
我思故我在,脑袋不会坏.
daisyboy
驱动小牛
驱动小牛
  • 注册日期2002-10-24
  • 最后登录2012-05-21
  • 粉丝3
  • 关注0
  • 积分599分
  • 威望140点
  • 贡献值1点
  • 好评度56点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-11-05 15:33

你没有做Unhook动作一般CloseHandle是不会有什么问题的。
但是千万不能StopService否则肯定蓝屏
哦,没看到是98,上面说的是NT,98下,没做UNHOOK VXD是不能动态加载的只能做静态加载

[编辑 -  11/5/02 by  gjpland]


我不明白,什么叫“动态加载”“静态加载”。
别笑话我啊。。。。我的驱动是在操作系统启动的时候自动加载的。
合作c/c++/ndis/pppoe/802.1x!
gjpland
驱动小牛
驱动小牛
  • 注册日期2001-09-13
  • 最后登录2011-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-11-05 17:28
[quote]
你没有做Unhook动作一般CloseHandle是不会有什么问题的。
但是千万不能StopService否则肯定蓝屏
哦,没看到是98,上面说的是NT,98下,没做UNHOOK VXD是不能动态加载的只能做静态加载

[编辑 -  11/5/02 by  gjpland]


我不明白,什么叫“动态加载”“静态加载”。
别笑话我啊。。。。我的驱动是在操作系统启动的时候自动加载的。 [/quote]
系统启动时加载就是静态加载,没有UNHOOK,那应该也是没有问题的。
我思故我在,脑袋不会坏.
游客

返回顶部