我可以使用以下内容删除Ruby中的IE7的cookie,历史记录,缓存等。
要清除:
临时Internet文件:
system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8')
浏览Cookie:
system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2')
浏览记录:
system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1')
表单数据:
system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 16')
用于填写网络登录表单的记忆密码:
system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 32')
或删除所有浏览历史记录(以上所有内容):
system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255')
是否可以获取删除前后的文件数量? 另外,如何在删除之前和之后检查临时Internet文件夹是否为空?
答案 0 :(得分:1)
首先,你需要知道各种文件夹的位置。
Windows 7的示例:
C:\Users\username\AppData\Local\Microsoft\Windows\Temporary Internet Files
Windows 8的示例:
C:\Users\username\AppData\Local\Microsoft\Windows\INetCache
临时文件可能有多个文件夹,有时用户可以更改文件夹的位置,因此您需要阅读Windows文档以了解如何获取所有文件夹的完整列表文件夹及其位置。
另外,IE7很老了。如果您的Windows版本也很旧,您可能想知道Windows在使用32位与64位的目录命名方面存在问题。此问题可能使文件和目录似乎消失。例如:Does Windows 7 hide files from Ruby?
Ruby代码获取目录的文件,没有特殊的" dot"目录:
dirname = "C:\Users\username\AppData\Local\Microsoft\Windows\INetCache"
Dir.entries(dirname) - [".", ".."]
示例方法:
def dir_contents(dirname)
Dir.entries(dirname) - [".", ".."]
end
def dir_empty?(dirname)
dir_contents(dirname).empty?
end
答案示例:
before_count = dir_contents(dirname).count
... do whatever deletion you want ...
after_count = dir_contents(dirname).count