在 Windows 7 上安装 WinPcap 4.1.2 时,我收到以下消息
"A previous version of WinPcap has been detected on this system and cannot be
removed because in use by another application. Please close all the
WinPcap-based applications and run the installer again."
Run Code Online (Sandbox Code Playgroud)
我已经多次安装和卸载该程序。
根据 WinPcap 常见问题解答,您应该:
删除 packet.*(packet.dll、packet.lib 等)
删除 wpcap.dll
删除 npf.sys。
这已经完成了,它仍然不会安装。
此外,我已经使用设备管理器删除了网络数据包过滤器“设备”。
我还在注册表中搜索了 winpcap,但没有结果。我搜索了 wpcap 并只找到了一个条目 - 包含目录中的一个头文件。我将它重命名为 .old ,但没有成功。
此外,我下载了源代码并搜索了上面的部分消息,希望能找到它如何检查以前的版本。在源代码中找不到该字符串(WinPcap 的版本)(在 cygwin 中使用 grep)。
最后,我通过电子邮件向被列为该计划联系人的两个人发送了电子邮件。
我还尝试以管理员身份安装该程序。
没运气。你们都是我最后的希望。:)
问题如上 - 我想删除旧版本的 WinPcap。但是其他可以帮助我的问题是,程序如何检查以前的版本?我还应该在注册表中搜索其他内容吗?有没有办法找出哪个程序正在使用 winpcap?有没有办法查看是否有任何程序依赖于 winpcap?任何线索将不胜感激。
谢谢!
我在哪里可以找到系统控制中的 WinPcap,我认为它作为服务运行,但似乎我错了。
我通过命令行(源代码)启动了 WinPcap :
runas /u:administrator "net start npf"
Run Code Online (Sandbox Code Playgroud)
在启动 WinPcap 之前,Wireshark 没有显示任何捕获接口,之后它显示了。所以我假设它正在运行。但是我在任务管理器的服务列表中找不到它。
为了缩小候选范围,我在启动和停止 WinCap 后比较了正在运行的服务,但没有区别。
如何直接确认此“服务”正在 Windows 8 上运行?
C:\WINDOWS\system32>sc query "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
Run Code Online (Sandbox Code Playgroud)
神秘:
sc query列出了 85 个服务——没有一个是“npf”——但sc query npf会找到它。
不幸的是,WinPcap不提供在 Windows 8 上运行的安装程序版本。由于 WinPcap 使用内核模式驱动程序来捕获网络数据包,强制 Windows 8 使用 Windows Vista / 7 驱动程序似乎是一个非常糟糕的主意。
是否有任何提供 Windows 8 兼容驱动程序的版本,或者是否有适用于 Windows 8 的替代程序提供此功能?
只需实现一个FTP服务器并使用wireshark来分析协议。我发现有一个由 wireshark 标识的协议FTP-DATA。那是什么?可以参考任何文件或RFC吗?
谢谢和最好的问候。