4.2 构建驱动程序NPF
在开始编译之前,需要注意NPF是依赖于平台的。建议编译驱动程序的操作系统与将要使用NPF的操作系统一致。此处以在Windows XP(x86架构)平台下构建驱动程序NPF为例来描述构建的过程。
WinPcap 4.1.2版的文档要求采用Microsoft Windows Driver Kit(WDK)6000 or 6001进行编译,此处使用WDK 6001.18002[1]编译WinPcap 4.1.2。
下面介绍NPF的构建步骤。
(a)执行[开始]→[所有程序]→[Windows Driver Kits]→[WDK 6001.18002]→[Build Environments]→[Windows XP]命令。此时,如果需要构建release版本的NPF,应执行[Windows XP x86 Free Build Environment]命令;如果需要构建debug版本的NPF,应执行[Windows XP x86 Checked Build Environment]命令。因为本例的CPU是x86架构,所以选择x86的构建环境。
对构建release版本NPF的操作总结如下:
[开始]→[所有程序]→[Windows Driver Kits]→[WDK 6001.18002]→
[Build Environments]→[Windows XP]→[Windows XP x86 Free Build Environment]
对构建debug版本NPF的操作总结如下:
[开始]→[所有程序]→[Windows Driver Kits]→[WDK 6001.18002]→
[Build Environments]→[Windows XP]→[Windows XP x86 Checked Build Environment]
(b)执行完上述命令后,会弹出图4-3所示的命令行窗口。切换路径到WinPcap源代码的packetNtx目录下(此处为E:\winpcap\packetNtx目录),执行CompileDriver脚本命令,如图4-4所示。
图 4-3 Windows XP x86 Free Build Environment命令行窗口
图 4-4 执行CompileDriver脚本命令
(c)该脚本的执行过程如图4-5所示,最终生成的二进制驱动程序(npf.sys)文件存储在E:\winpcap\packetNTx\driver\bin\i386目录下(release与debug方式构建的npf.sys文件都存放在该目录下)。
图 4-5 CompileDriver脚本执行过程
[1]Windows Driver Kit可从http://connect.microsoft.com/directory下载。