在64位的Windows7下安装完wireshark,重新启动计算机后再启动wireshark抓包的时候。wireshark会报错:NPF driver is not running error。
因为The npf driver的驱动不在我们的“计算机”=>管理里面的WMI界面里面显示,npf的状态需要用命令行方式来检查。使用administrator的方式运行CMD。执行以下的命令查询该服务是否安装:

C:\Windows\system32>sc qc npf
[SC] QueryServiceConfig 成功

SERVICE_NAME: npf
TYPE : 1 KERNEL_DRIVER
START_TYPE : 3 DEMAND_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : system32\drivers\npf.sys
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : NetGroup Packet Filter Driver
DEPENDENCIES :
SERVICE_START_NAME :

使用一下命令查询该服务是否已启动:

C:\Windows\system32>sc query npf

SERVICE_NAME: npf
TYPE : 1 KERNEL_DRIVER
STATE : 1 STOPPED
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

启动NPF服务:

C:\Windows\system32>sc start npf

SERVICE_NAME: npf
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 0
FLAGS :

现实已经启动完成:

C:\Windows\system32>sc queryex npf

SERVICE_NAME: npf
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 0
FLAGS :