如何使用bat脚本删除Internet Explorer cookie?

时间:2015-10-31 01:43:57

标签: batch-file cookies windows-7 command internet-explorer-11

我为我的计算机编写了一个简单的bat脚本来做一些事情。其中一件事就是从我的电脑上删除cookie。

我选择了以下命令来执行此操作;

RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 4351

因为此页面上给出了以下命令列表;

https://social.msdn.microsoft.com/Forums/ie/en-US/ce81943b-32b8-437b-b620-171c3d5893e7/inetcplcpl-with-clearmytracksbyprocess?forum=ieextensiondevelopment

echo Clear Temporary Internet Files: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8 


echo Clear Cookies: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2 


echo Clear History: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1 


echo Clear Form Data: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 16 


echo Clear Saved Passwords: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 32 


echo Delete All: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255 


echo Delete All w/Clear Add-ons Settings: 
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 4351

但是,运行此版本后运行我的防病毒软件仍会删除大量的Cookie,因此我知道它不会按预期删除Cookie。但它确实清除了我的网络历史。

有人能够解释为什么这不起作用吗? Microsoft是否更改了IE以便无法删除cookie,或者是否使用不同的Cookie文件夹?另外,我应该使用什么命令来成功删除cookie?

2 个答案:

答案 0 :(得分:4)

正如其他人所说,当你正常运行rundll32.exe时,它在Medium IL下运行。有一种方法可以在低IL中启动它,以便它可以清除IE临时Internet文件\ Low文件夹中的内容。只需复制rundll32.exe并将其设置为使用CACLS在Low IL中运行。更多信息:http://www.winhelponline.com/blog/rundll32-command-clear-ie-cache-ineffective-windows-vista-higher/

令人惊讶的是,大多数人只是认为通过正常运行命令来清除缓存。

答案 1 :(得分:3)

@echo off
copy %windir%\system32\RUNDLL32.EXE %TMP%\RUNDLL32-IL.EXE
ICACLS %TMP%\RUNDLL32-IL.EXE /SETINTEGRITYLEVEL LOW
echo createobject^("shell.application"^).shellexecute "cmd.exe",""" /c START /W /B %TMP%\RunDll32-IL.exe InetCpl.cpl,ClearMyTracksByProcess 255""","","runas",0  > %TMP%\rundll32.vbs
start /w /b %TMP%\rundll32.vbs

首先从Rundll32.exe文件夹中的 Temp 复制副本
然后将该副本的完整性级别更改为低,以使其在运行时没有保护模式
然后以管理员身份运行它以清理互联网管理员