Windows驱动开发环境搭建之Hello World

驱动程序的生成

[个人配置]

win7_x64
vs2015
WDK10

按照书上的例子进行编写,只包含了类似下面 ntxxx.h 的头文件,都无法找着:

#include 
#include 
...

第一反应是vs中的包含目录中没有驱动头文件的目录,其默认包含如下

Windows驱动开发环境搭建之Hello World_第1张图片

然而在对应的版本中并没有发现有对应的目录:

Windows驱动开发环境搭建之Hello World_第2张图片

在对应的include版本下,有多个版本,尝试着从前一个版本(10.0.14393.0中)复制一个km目录到当前版本(10.0.15063.0)的include中:
Windows驱动开发环境搭建之Hello World_第3张图片

再次回到 vs中发现 include都能找到头文件,然后进行编译,又出错了: LINK : fatal error LNK1181: 无法打开输入文件“C:\Program Files (x86)\Windows Kits\10\lib\10.0.15063.0\km\x86\cfg_support_v1.lib

网上有资料说:安装的 windows10 sdk 与 wdk10 的版本号不一致的情况下会出现这样的问题。 经过检查确认 自己机器上的版本是一直的。。

老办法从前一个版本中找到对应的目录,复制一份到新版本的目录中,这次编译生成驱动文件。

驱动程序的运行

[安装驱动主机配置]

win7 x86

以管理员权限启动 DbgView, 加载驱动程序,发现DbgView中没有任何消息。

  • 解决方案:
    • 1.打开注册表
    • 2.[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
    • 3.建立[Debug Print Filter]这个新键。
    • 4.新增加一个“DEFAULT”的DWORD值,将其内容设置0x0f,如下图所示:
    • 5.重启OS后生效

再次加载驱动——–成功打印出消息

你可能感兴趣的:(驱动)