64位驱动环境配置

 

下载vs对应的wdk   微软官网下载

根据wdk安装路径设置系统环境变量

vs配置

$(WDKPATH) 为 wdk路径 系统环境变量

配置可执行文件目录: $(WDKPATH)\bin;$(WDKPATH)\bin\amd64;
配置包含目录:$(WDKPATH)\inc;$(WDKPATH)\inc\ddk;$(WDKPATH)\inc\api;$(WDKPATH)\inc\crt;
配置库目录: $(WDKPATH)\lib;$(WDKPATH)\lib\Crt\amd64;$(WDKPATH)\lib\ATL\amd64;$(WDKPATH)\lib\wxp\amd64;$(WDKPATH)\lib\win7\amd64;

库目录:$(WDKPATH)\lib;$(WDKPATH)\lib\win7\amd64;

 

常规选项卡
警告等级     (3 级(/W3)          
将警告视为错误  (是(/wx)         //建议  防止蓝屏的情况
优化选项卡
优化(禁用/Od)                          
预处理器
预处理器定义:_AMD64_=1,AMD64=1,STD_CALL=1,WINVER=0x0501,_DEBUG =1
代码生成

       基本运行时检查:默认值    
       运行时库:多线程调试(/MTd)
高级
     调用约定  __stdcall(/Gz)                              

常规
     启用增量链接:否(/INCREMENTAL:NO)                         
输入

附加依赖项

ntoskrnl.lib;ndis.lib;Hal.lib;wdm.lib;wdmsec.lib;  //根据实际情况调整

忽略所有默认库:    是 (/NODEFAULTLIB)            

 

调试:
生成调试信息  是(/DEBUG)                                    
生成映像文件:是(/MAP)         
映像文件名:$(TargetDir)$(TargetName).map    
系统(System)
     子系统:  本机 (/SUBSYSTEM:NATIVE)                   
     驱动程序:    驱动程序(/DRIVER)                    

最基础驱动代码

#include <ntddk.h>

VOID UnDriver(PDRIVER_OBJECT driver)
{
	KdPrint(("Uninstall Driver Is OK \n"));
}

NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)
{
	KdPrint(("hello driver \n"));
	DriverObject->DriverUnload = UnDriver;
	return STATUS_SUCCESS;
}

  

win7 有驱动签名验证,如果出现驱动无法加载的情况,可以查看windows系统日志,

关闭方法:

重启windows  F8 选择关闭驱动签名。

posted @ 2021-01-16 23:43  adobase  阅读(294)  评论(0)    收藏  举报