Win11虚拟机配置
ios下载
虚拟机
安装vmware tools
虚拟机整个安装好之后(进入桌面)
没有安装的话不会是重新安装,点击后,按虚拟机中的提示安装即可。
激活
管理员powershell:
1 | irm https://get.activated.win | iex |
连接主机网络
虚拟机网络选择net模式、关闭虚拟机防火墙
win+x然后i执行ipconfig:Ethernet0就是虚拟机本地ip
主机用同理方法可以得到ip地址,相互ping来测试
或者直接ping 计算机名
也可以
配置虚拟机wdk和连接
预配计算机以便进行驱动程序部署和测试 (WDK 10) - Windows drivers | Microsoft Learn
在虚拟机中安装wdk,执行C:\Program Files (x86)\Windows Kits\10\Remote\x64\WDK Test Target Setup x64-x64_en-us.msi
这个文件
然后vs打开项目的扩展-driver-Test-Configure Devices…添加对应主机名或ip
然后设置为目标计算机
调试
虚拟机中开启测试模式
对于上面显示的key和port,宿主机中
1 | ./Windbg -k net:port=xxx,key=xxx |
在C:\Program Files (x86)\Windows Kits\10\Debuggers\x64下执行
关于部署驱动和在vs中调试的报错
编译期报错:需要缓解库或者语法错误
确保缓解库版本和工具链版本一致,如果是最新,需要在项目属性中找到MVCS版本,调整为所有可选版本中最新的版本,而不是默认
语法错误需要检查编码,尝试以UTF8存储或者GBK,多试几个应该就好了
报错:第三方inf不包含数字签名信息
需要生成crt证书文件,项目,属性,Inf2Cat,Run Inf2Cat 改为是
属性,Driver Signing中Sign Mode改为Test Sign
虚拟机开启测试模式
Windbg无法调试,打开一直显示Waiting to reconnect…
首先确保虚拟机调试模式一打开,如果vs中设置好了port和key,且虚拟机中
bcdedit /dbgsettings
查看设置是否相同,如果相同,尝试关闭虚拟机的调试模式再打开,重复两三次,然后再尝试(这个被坑了好久,最后还是学长帮我配好的)
driverquery无法看到对应的驱动
查看当前驱动是不是硬件驱动,在设备管理器中选择按驱动分类,可以找到自己安装的驱动,想要看这种驱动的值,可以通过驱动注入程序强制安装,然后在dbgview中看到效果。如果是微软写的抽象helloworld代码,因为没写卸载函数,所以不能卸载。不如用下面这个做测试(用wdm项目)
1 |
|
太抽象了,这个环境配了6天TAT,感谢 学长 帮我。