标准化程序入口代码如下:
#include <ntifs.h>NTSTATUSDriverEntry( _In_ PDRIVER_OBJECT DriverObject, _In_ PUNICODE_STRING RegistryPath){ return 0;}但是这样编译是有错误的,如下图:
解决方法有2个:
1、在属性页把警告视为错误设置为否。如图:
2、或者在代码里使用这两个参数,DriverObject和RegistryPath。代码如下:
#include <ntifs.h>NTSTATUSDriverEntry(_In_ PDRIVER_OBJECT DriverObject,_In_ PUNICODE_STRING RegistryPath){ DriverObject; //使用一下,解决编译错误 RegistryPath;return 0;} 二、KdPrint()函数KdPrint使用方法类似C语言的Printf,打印输出信息用的。不同的是KdPrint是宏,使用时需要使用双括号。例如:
KdPrint(("Hello world")); 三、虚拟机里加载驱动接着上面先编译一下,完整代码如下图:
根据这个路径找到这个文件,把这个文件复制到虚拟机里面。打开DebugView,把捕获内核信息的选项勾上。如图:
打开加载驱动的工具 DriverMonitor,具体操作如下图:
驱动加载成功,如图:
今天的这节课就到这里,希望看到此章的朋友给个赞吧!谢谢!有不懂的可以留言,粉丝必答。