安装WDK WindowsKernelModeDriver10.0
1.打开 VS installer
然后选择修改,下载WDK10.0
安装WDK
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/download-the-wdk
安装即可
安装玩WDK后报的新错误
又要下载1.14个G
好吧我完全弄错了,前面编译驱动的环境我根本不需要装。有现成编译好的DLL文件给我使用,我没去下载而已(我以为下下来还是那个源文件,结果只是我以为而已,别人已经给我编译好了)
不过跑example代码还是出错了
错误 LNK2019 无法解析的外部符号 __imp__htonl@4,函数 _MakeICMP 中引用了该符号
解决方法:在cpp文件Include后添加 #pragma comment(lib,“ws2_32.lib”)
#include “***”
#pragma comment(lib,"ws2_32.lib")
这几个错误找了很久都没解决办法,但最后还是突然想到了上面类似的处理方法:添加 lib库。
错误 LNK2019 无法解析的外部符号 __imp__CreateUnicastIpAddressEntry@4,函数 _main 中引用了该符号 wintunw_test
错误 LNK2019 无法解析的外部符号 __imp__InitializeUnicastIpAddressEntry@4,函数 _main 中引用了该符号 wintunw_test
只需要找到这些函数所在的lib文件 链接进去就行
1>wintun.obj : error LNK2019: 无法解析的外部符号 __imp__RtlIpv4AddressToStringW@8,函数 _PrintPacket 中引用了该符号
1>wintun.obj : error LNK2019: 无法解析的外部符号 __imp__RtlIpv6AddressToStringW@8,函数 _PrintPacket 中引用了该符号比
如这两个错,是RtlIpv4AddressToStringW的异常,所以只需搜索一下RtlIpv4AddressToStringW所在的.lib文件是 Ntdll.lib,添加进去就可以了。