如何加载和启动windows驱动程序?
Posted
技术标签:
【中文标题】如何加载和启动windows驱动程序?【英文标题】:How to load and start windows driver? 【发布时间】:2011-08-24 09:38:27 【问题描述】:嗨,我有一个简单的驱动程序 helloworld.sys,里面有一些打印语句,如 kdprint("loaded successfully") 等。现在我需要加载驱动程序并启动服务。怎么做..?? 在此先感谢
【问题讨论】:
【参考方案1】:基本上,驱动程序应该注册为服务。使用OpenSCManager
访问服务管理器功能,然后使用CreateService
首次注册您的驱动程序。
在注册期间,您选择驱动程序启动类型。 SERVICE_BOOT_START
表示驱动程序应在引导期间加载(操作系统加载的早期阶段),SERVICE_SYSTEM_START
表示应在系统加载期间加载驱动程序(这或多或少是典型的)。您也可以使用SERVICE_DEMAND_START
- 驱动程序不会自动加载。
除非您的驱动程序是自动加载的,否则您应该使用OpenService
来访问其服务,并使用StartService
来实际启动它。
其余的取决于您的驱动程序实际执行的操作。如果它创建了一个虚拟设备 - 您可以使用CreateFile
访问它。然后使用DeviceIoControl
与它进行实际通信。
【讨论】:
【参考方案2】:请参阅下面的链接,您可以在其中找到从编写驱动程序到编译和启动它所需了解的所有信息:
Introduction to Device Drivers
【讨论】:
以上是关于如何加载和启动windows驱动程序?的主要内容,如果未能解决你的问题,请参考以下文章