Windows无法完全卸载winpcap怎么办?这里给你支招了。

前言
    今天在工作中,需要安装Wireshark抓包工具,抓取sip以及自定义消息的报文,由于自定义的消息需要发送回环地址报文,Wireshark自带的Wincap无法支持回环网卡,因此需要用Npcap代替。但是在卸载的过程中,多次卸载不干净,浪费很多时间。因此将折腾的流程写出来,供大家参考。

WinPcap关键模块

    通过研究,WinPcap的关键模块是wpcap.dll,Packet.dll,WanPacket.dll,pthreadVC.dll,drivers\npf.sys,这几个模块,在x86和x64下存放的位置不一样。如下表格

x86 x64
C:\Windows\system32\wpcap.dll C:\Windows\SysWOW64\wpcap.dll
C:\Windows\system32\Packet.dll C:\Windows\SysWOW64\Packet.dll
C:\Windows\system32\WanPacket.dll C:\Windows\SysWOW64\WanPacket.dll
C:\Windows\system32\pthreadVC.dll C:\Windows\SysWOW64\pthreadVC.dll
C:\Windows\system32\drivers\npf.sys C:\Windows\System32\drivers\npf.sys

    由于wpcap.dll模块涉及网卡相关操作,在很多类似程序中都有使用,因此卸载前需要事先将相关程序关闭,杀掉进程,否则占用会导致卸载失败。

完全卸载方法
  1. 使用winpcap安装目录下自带的uninstall.exe卸载。
  2. 查找winpcap的关键模块,手动删除。
卸载失败处理方法
  1. 若删除遇到问题,采用如下方法处理,使用tasklist /m packet.dll查看占用该模块的进程信息,终止进程和进程转到的相关服务,如下图:
    在这里插入图片描述
  2. 卸载中发现svchost.exe进程也在占用该模块,但是系统中这个进程很多,该怎么区分呢?直接找Message Service服务进程,转到进程就可以找到具体的svchost.exe了;这个杀掉后,很难过的是,Message Service停不掉,只能拿出看家本领了。在服务中,找到该服务项,右键把启动方式先设置为禁用,然后重启电脑,等卸载完毕后改过来即可。
    在这里插入图片描述
写在结尾

    以上是今日工作中遇到的问题,解决思路,可能不是适用于所有PC机。如果优秀的你在平常实践中发现本文有遗漏或者有误,请随时私信我或者留言,我会第一时间答复。一起探讨,相互进步。在工作生活中,不重复造轮子,在别人优秀的基础上,我们通过学习将变得更加优秀。

发布了11 篇原创文章 · 获赞 15 · 访问量 1061

猜你喜欢

转载自blog.csdn.net/Marble_ccp/article/details/104805890