如何查找Internet Explorer(IE)的缓存文件的完整路径?

时间:2012-07-11 08:04:13

标签: c++ internet-explorer caching

操作系统:Windows 7 64位 IE版本:9

当我打开

C:\Users\<USERNAME>\AppData\Local\Microsoft\Windows\Temporary Internet Files

目录有explorer.exe,IE缓存文件都在那里。

但文件不存在。

例如,如果 commonPerson.js 位于缓存文件中,

其真实路径为 C:\ Users \ USERNAME \ AppData \ Local \ Microsoft \ Windows \ Temporary Internet Files \ Low \ Content.IE5 \ 3IM78NQJ \ commonPerson.js

我猜其他路径是固定的,3IM78NQJ是由某些规则确定的(Hash?)。

Nirsoft's IECacheView包含我想要制作的内容,我会用C ++来完成。

如何找到每个缓存文件的真实路径?

是否有任何众所周知的规则或索引文件包含有关文件路径的信息?

3 个答案:

答案 0 :(得分:0)

Vista及更高版本:

SHGetKnownFolderPath(FOLDERID_InternetCache, .....)

较早:

SHGetFolderPath(....., CSIDL_INTERNET_CACHE, .....)

您仍然需要自己迭代子目录。

答案 1 :(得分:0)

GetUrlCacheEntryInfo是用于将URL映射到其缓存文件位置的正确API。

根据您的具体情况,您可能还需要使用FindFirst/FindNextUrlCacheEntry功能。

答案 2 :(得分:0)

使用certutil -URLCache -v命令