最近在使用百度网盘,双击桌面的《百度网盘》图标,发现有等好几分钟,软件才会启动。百度网盘启动太慢了,后面发现百度网盘,使用dll注入技术,附加到很多不相干的进程里,比如附加explorer进程、附加到evertything进程等等。这种注入或者附加,是造成百度网盘启动缓慢的主要原因。
百度网盘是通过yunshellextv1.dll、yunshellextv164.dll这2个文件,附加到其他进程的。
首先要找到被yunshellextv164.dll注入的多个进程,然后依次关闭这多个进程,最后,把这2个dll,重新命名即可。这里以win10 64位的百度网盘为例,进行说明,步骤如下:
1 查看yunshellextv164.dll附加的进程
点击桌面左下角的【开始】–》找到【命令提示符】–》右击【命令提示符】 --》以管理员身份运行 —》输入命令: tasklist /m yunshellextv164.dll 如图(1)、图(2)所示:
tasklist /m yunshellextv164.dll
2 依次关闭这些附加的进程
由图(2)可知,yunshellextv164.dll附加到了exploer.exe、Everything.exe这2个进程中,需要把这些进程依次关闭即可。
2.1 通过任务栏来关闭某个进程
右击任务栏上Everthing图标 --》关闭窗口 --》即可关闭Everything进程,如图(3)所示:
2.2 通过taskill来关闭某个进程
还可以通过命令行的方式,关闭某个进程,比如,关闭explorer进程,命令如下:
// 2.2.1) 关闭explorer进程
taskkill /f /im explorer.exe
// 或者,通过PID来关闭进程
// 此例中explorer.exe的PID = 10036, 则命令如下:
taskkill /f /pid 10036
如图(4)所示:
关闭explorer进程后,桌面会变成一片空白,这时,再输入start explorer.exe命令,即可启动explorer,如下:
//2.2.2) 启动explorer
start explorer.exe
先关闭explorer,再打开explorer,等价于重启explorer,则命令2.2.1和命令2.2.2,可以合成一条命令如下:
taskkill /f /im explorer.exe && start explorer
3 重命名dll
给yunshellextv1.dll、yunshellextv164.dll加个后缀,比如加个后缀: _bak,如表(1)所示:
序号 | 原名称 | 新名称 |
---|---|---|
1 | yunshellextv1.dll | yunshellextv1.dll_bak |
2 | yunshellextv164.dll | yunshellextv164.dll_bak |
如图(5)所示:
至此,已经规避yunshellextv1.dll、yunshellextv164.dll的注入。百度网盘的启动速度,就快了许多。
附录
A1 查找Notepad进程的PID
通过tasklist | findstr /i 命令+进程名称,可以查看进程的PID。
//查找Notepad进程的PID
tasklist|findstr /i "notepad"
A2 根据PID来关闭进程
由图(6)所示,notepad的PID = 4216,则关闭notepad进程的命令如下:
//关闭PID = 4216的进程
tasklist /f /pid 4216
如图(7)所示:
A3 根据进程名,模糊查找
在进程名的前面或者后面加上*星号,来进行模糊查找,比如查找当前系统里sql开头的进程名称,其命令如下:
//查找以sql开头的进程名
tasklist|findstr sql*