使用 WinDivert 丢弃数据包

Drop packets using WinDivert

我正在尝试编写可以通过过滤器丢弃数据包的简单防火墙。为此,我使用 WinDivert。我正在加载 WinDivert.dll 并将 WinDivert.lib 和 WinDivert32.sys 添加到项目文件夹。然后我尝试使用 WinDivertOpen() 安装 WinDivertDriver。结果总是负面的。 我做错了什么以及如何才能成功安装驱动程序?代码示例。

我通过以下方式解决了这个问题。 1) 在 Project->Properties->Linker->Input->Additional Dependencies 中将路径设置为 WinDivert.lib 。 2) 已移至根文件夹文件 WinDivert.dll 和 WinDivert32.sys。 3) 将 windivert.h 包含到我的项目中。 4) 在 TESTSIGNING 引导配置中设置我的 PC(用于此 Windows Driver Kit 7.1.0。)。 5) 重启电脑。 如果这些步骤没有帮助,您应该使用 Windows Driver Kit 7.1.0 从源构建 WinDivert。 Visual Studio 12 或更高 here