Windows驱动程序的加载
NT式驱动程序的加载
1. 用DriverMonitor工具加载NT式驱动
2. 在注册表中填写相应的字段,Windows对NT式驱动程序的加载,是基于服务的方式加载的,类似于Windows服务程序的加载。设备驱动程序的动态加载主要是基于服务控制程序(Service Control Manager,SCM)系统组件完成的。
SCM组件为Windows中运行的组件提供许多服务,例如,启动,停止,控制等服务。服务类似于Linux中的守护进程。编写加载驱动程序,主要是操作SCM组件。
WDM式驱动程序的加载
和NT是驱动程序的不同,WDM式驱动程序不能被当做服务程序进行加载,因此不能靠简单的修改注册表来进行加载。WDM式驱动程序的加载需要依靠一个以INF为后缀名的文本文件来描述驱动程序的加载过程。
WDM驱动程序相比较NT式驱动程序增加了即插即用的功能,因此在安装的时候需要一个INF文件来提供支持以提供必要的信息。
系统首先会定位INF文件,根据INF文件上的指示,系统会将驱动程序(sys文件)相关的文件拷贝到相应的系统目录下,修改相应的注册表。同时通知PnP管理器,I/O管理器创建新设备,并执行驱动程序的入口函数DriverEntry,INF文件提供了WDM驱动程序所需要的所有信息,包括需要新建和修改的注册表和需要拷贝的文件等。
Windows驱动程序的加载相关推荐
- 【系统】windows2003 至少有一个服务或驱动程序无法加载或错误
不知道怎么搞的,电脑上装的 windows 2003 每次安装了程序卸载后,开机时总会提示 "至少有一个服务或驱动程序无法加载或错误",弄的我很郁闷.在网上找了很多解决的办法.感觉 ...
- windows常见的加载错误的3个解决办法
windows常见的加载错误的3个解决办法 作者:系统达人 来源:http://www.dnxp.net 当在系统中频繁安装和卸载一些应用程序,或者频繁对系统进行杀毒操作的话,系统在日后的启动过程中可 ...
- Server2003 开机显示引导或系统启动驱动程序无法加载
现象: Windows Server 2003 SP2系统,启动后提示: 下列引导或系统启动驱动程序无法加载: HWiNFO32 原因: 该系统安装过驱动精灵,卸载驱动精灵后注册表有残余服务键值. 解 ...
- Windows Dll 动态加载
Windows DLL 动态加载 1. 起因 2. 问题原因 3. 解决 3.1 C++ 版 3.2 C#版 1. 起因 写代码的时候,需要动态加载DLL,这是一个非常非常常规的操作对吧.然而在开发的 ...
- Microsoft Corporation 去掉 windows 修改 启动加载 版权
windows 修改 开机界面 boot启动界面 windows 修改 启动加载 版权 windows 系统如何修改开机画面的版权文字"Microsoft Corporation ... ◎ ...
- 系统错误:下列引导或系统启动驱动程序无法加载: HWiNFO32
下列引导或系统启动驱动程序无法加载: HWiNFO32 这个问题出现要分为两种情况:①有装HWiNFO32软件 ②没装HWiNFO32软件 ①曾经安装过HWiNFO32软件 HWiNFO32是一个专业 ...
- Windows未正确加载怎么办?
Windows未正确加载的原因 Windows未正确加载的错误通常出现于您尝试重新启动系统时,是一类较为普遍的错误,您可能会收到诸如:Windows似乎未正确加载.你的电脑未正确启动等错误提示. 造成 ...
- matlab 读取voi文件,VOI虚拟化下的Windows网卡驱动加载方法与流程
本发明涉及计算机技术领域,特别涉及VOI虚拟化下的Windows网卡驱动加载方法. 背景技术: 在VOI虚拟化方案中,首先需要确保网卡驱动能够提前加载到系统中,才能够实现通过网络来引导操作系统启动.现 ...
- 电脑频繁蓝屏:下列引导或系统启动驱动程序无法加载: kavbootc解决办法
经过网上查询发现是金山毒霸驱动kavbootc无法加载导致,而自己只有第一次安装系统的时候附带有金山毒霸,后面卸载不再使用. 通过文件查询到kavbootc文件位置,删除后,还是会蓝屏. 最后解决办法 ...
最新文章
- Python | 除法
- 数据库连接python_python连接数据库
- IE或Chrome浏览器玩Xbox游戏能实现吗
- php 截取某个字符,PHP_php截取指定2个字符之间字符串的方法,本文实例讲述了php截取指定2个 - phpStudy...
- 利用IDEA创建hadoop文件
- java用于保存登录对象怎么写,利用对象流模仿登陆注册功能——Java对象流应用...
- [高级软件调试方法] SoftProbe调试方法及实现
- 《java入门第一季》之面向对象(static关键字内存图解)
- SpringBoot读取自定义配置文件
- 线性分类器三种最优准则
- ThoughtWorks 2019届校招算法、软开迷宫(maze)生成题目
- 嵌入式MRZ机读码OCR识别电子护照阅读器模块|模组安装与测试注意事项
- C1任务01-植物大战僵尸修改游戏存档(小白也能看懂)
- 李有志——预谋着向生活发起冲锋...
- hathitrust 下载工具 (大量英文原版名著扫描免费下载)
- 正式成为 Apache Teaclave 子项目,百度安全 Rust TrustZone SDK 赋能多平台隐私安全计算开源生态
- OpenResty 连接Redis
- 最TOP小程序排行榜出炉
- 深入理解volatile(Java)
- git am冲突问题解决方法
热门文章
- linux 切换root账号_Linux 服务器的安全保障,看看这些
- JAVA进阶教学之(序列化和反序列化)
- IOC容器(底层原理解读)
- JAVA入门级教学之(关系运算符)
- axure html 360安装扩展,win10系统360浏览器添加Axure扩展的操作方法
- php 巧用逻辑运算符,php的神奇逻辑运算符
- js br不生效_前端标注工具-AILabel.js
- 你觉得外观模式和代理模式的联系和区别是什么?_GoF23种设计模式
- easyvision视觉软件 源码_一对一直播源码都有哪些独具一格的优势?
- android 截图 listview,Android屏幕及view的截图实例详解