sniper167
驱动中牛
驱动中牛
  • 注册日期2006-07-12
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分13分
  • 威望411点
  • 贡献值0点
  • 好评度321点
  • 原创分0分
  • 专家分0分
阅读:1519回复:3

如何异步加载一个驱动?

楼主#
更多 发布于:2008-05-28 15:29
最简单的驱动加载就是开机时加载,直接弄在注册表builtin下

OS启动时,挨个扫描builtin下驱动并加载,最后进入桌面

但这样会使开机时间变长

我想开机时只加载必要的驱动,如nandflash、LCD、声卡等

其他的驱动等进入桌面后再加载,这种想法如何实现呢?

除了HKEY_LOCAL_MACHINE\Drivers\BuiltIn\XXX这样可以加载驱动,还有什么别的方法可以加载驱动吗?
[url]http://sniper167.bokee.com[/url]
high
论坛版主
论坛版主
  • 注册日期2002-08-10
  • 最后登录2010-07-26
  • 粉丝4
  • 关注0
  • 积分60分
  • 威望655点
  • 贡献值0点
  • 好评度56点
  • 原创分0分
  • 专家分60分
沙发#
发布于:2008-05-29 01:06
动态加载. ActivateDevice / ActivateDeviceEx 可以在ce运行期加载. 而且支持动态卸载DeActivateDevice.

本质上,静态加载和动态加载是一样的. 静态加载也是使用这个方式. 设备管理器device.exe 加载BusEnum.dll, 然后BusEnum.dll对BuiltIn下的驱动使用ActivateDevice逐个加载
sniper167
驱动中牛
驱动中牛
  • 注册日期2006-07-12
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分13分
  • 威望411点
  • 贡献值0点
  • 好评度321点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-05-29 10:20
谢谢楼上

另外再问个,注册表有个键值,可以禁止一个驱动或者一个块设备被卸载,这个键值叫啥呢?我以前见到过,现在想不起来了
[url]http://sniper167.bokee.com[/url]
high
论坛版主
论坛版主
  • 注册日期2002-08-10
  • 最后登录2010-07-26
  • 粉丝4
  • 关注0
  • 积分60分
  • 威望655点
  • 贡献值0点
  • 好评度56点
  • 原创分0分
  • 专家分60分
地板#
发布于:2008-05-29 15:11
FLAGS

您可以访问我的www.chenyq2008.spaces.live.com . 有提到Flags的设置.
游客

返回顶部