wangbo
驱动牛犊
驱动牛犊
  • 注册日期2001-06-11
  • 最后登录2002-07-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1129回复:1

关于驱动和注册表的问题,请各位自由发表高见!!

楼主#
更多 发布于:2002-03-13 16:07
小弟现在做驱动,需要把一些初始化的数据放在注册表里,由Driver到注册表里去读的这些初始值,另外,我在控制面板里有个小程序能修改这些配置,并且要求配置修改后Driver能够立即得到这些新的配置。小弟有两条思路:
1。在控制面板小程序里,将新的配置写到注册表里覆盖原来的配置,在通过DeviceIoControl()让Driver得到这些新的配置数据。

2。在控制面板小程序里,将新的配置写到注册表里覆盖原来的配置后,不通过DeviceIoControl(),而是象设备管理器里的“停用设备”,“启用设备”那样操作,由系统把Driver重新加载一遍,Driver自己会去注册表读取我刚才写进去的新配置。

结论:
     方法一 需要在Driver 里添点代码,但很容易实现,就怕在Driver里这些配置数据没有得到同步的刷新,会出问题。

    方法二  不需要在Driver里添任何代码,Driver被停用了时间会丢失数据。

     设备管理器里的“停用设备”,“启用设备”是用什么API实现的?可以给个例子看看吗??

请大虾自由发表高见!!!!
神仙?妖怪? 谢谢!
jansen
驱动小牛
驱动小牛
  • 注册日期2001-10-21
  • 最后登录2007-10-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-03-24 17:25
我同意你的第一条:
因为这样做驱动和应用会同步刷新数据的!
通过api接口函数像驱动发送请求和数据,然后让驱动发送deviceiocontrol code对注册表进行操作.而应用程序又可以读注册表!这样在系统重新启动的时候会保留你的关机时的设定!
比如:display driver :
API Escapeex() 向DDI接口drvescape()发送请求即可实现!
不知道你的驱动是那个系统的,你可以在相关的ddk中获得参考的!
 

rich
游客

返回顶部