WDK10+VS2017+VMware+Win10x64[10586专业版]+SDK10+HelloWorld

这里写图片描述
搞了4,5天WDK环境,终于搞出来了,先发博客庆祝下,教程有空再补!T-T

双机调试

官方教程
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/gettingstarted/writing-a-very-small-kmdf–driver
调试
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/gettingstarted/provision-a-target-computer-wdk-8-1
COM虚拟机安装教程(win7的话不支持net调试官网上说的好像)
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/debugger/attaching-to-a-virtual-machine–kernel-mode-

主机和虚拟机在同一个网络,互相能PING通(都关网防火墙就行)。
双机调试常用的有两种方式,第一种是上面的com比较麻烦,第二种是net调试。

C:\Program Files (x86)\Windows Kits\10\Remote\x64\WDK Test Target Setup x64-x64_en-us.msi
先把这个考到虚拟机执行,然后执行下图操作

这里写图片描述

在虚拟机开机的到桌面的情况下直接下一步就会自动安装一堆东西,安装完成后可能会有两个报错,微软说这两个报错不是错误可忽略,安装过程虚拟机会黑屏好长一段时间这是正常情况,然后就可以调试了。

下面是win7 64 禁用驱动强制签名本机debugview

这里写图片描述

#include <ntifs.h>

NTSTATUS DriverEntry(
    _In_ PDRIVER_OBJECT     DriverObject,
    _In_ PUNICODE_STRING    RegistryPath
)
{
    KdPrint(("Entry Driver!\n"));
    DbgPrint("Entry Driver-----------------------------123------------!");
    return STATUS_SUCCESS;
}

VOID UnLoadDriver(PDRIVER_OBJECT DriverObject) {
    KdPrint(("UnLoad Driver!\n"));
}

KdPrint debugview 看不到不知道为什么(可能是Kdprint函数是双机调试vs里显示,DbgPrint函数是debugview显示,这样子)

安装wdk的时候sdk和wdk 版本都要一样

debugview 64 为 Capture Global Win32 打勾 管理员模式

虚拟机win7 64 还得打个补丁

Windows Registry Editor Version 5.00  



[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter]   

"DEFAULT"=dword:0000000f  

猜你喜欢

转载自blog.csdn.net/osummertime/article/details/79837752