#include <ntddk.h>
VOID DriverUnlode(PDRIVER_OBJECT pDriverObject)
{
//指明这个参数是我故意不用的,不是我忘了,告知编译器不要警告我
UNREFERENCED_PARAMETER(pDriverObject);
//DriverUnlode 驱动的卸载函数,负责清理资源,在驱动卸载的时候调用
//驱动里的资源是真实的系统里的资源,搞不明白分分钟给你蓝屏
DbgPrint("Unlode success");
//打印成功证明我们成功的卸载了这个驱动
}
//DriverEntry 相当于三环程序,也就是应用程序的main函数
//两个参数,PDRIVER_OBJECT 驱动对象指针 ;PUNICODE_STRING pRegPath 注册表的路径指针
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING pRegPath)
{
UNREFERENCED_PARAMETER(pRegPath);
//制定驱动卸载函数
pDriverObject->DriverUnload = DriverUnlode;
DbgPrint("Hello World!");
//返回值
return STATUS_SUCCESS; //实际这里返回的是0,在驱动里返回0是成功,跟三环应用程序相反
}
网友评论