65.9K
CodeProject 正在变化。 阅读更多。
Home

探索 URL 缓存

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.79/5 (11投票s)

2003年6月9日

1分钟阅读

viewsIcon

82447

downloadIcon

2817

使用 WinInet 库探索 URL 缓存

Sample Image - UrlExplr.jpg

引言

我希望创建一个一键解决方案来清除浏览器在我机器上留下的所有文件,这促使我深入研究了 URL 缓存。这似乎是管理所有与互联网相关文件的位置。当然,这次探索演变成了一个完整的应用程序,用于查看缓存并查看实际存储的详细信息。

所有操作 URL 缓存的方法都属于 WinInet 库。这个库相当底层(虽然不完全是套接字级别,但它相当接近)。除了缓存之外,该库还提供 http、ftp 和 gopher 文件传输功能。

遍历 URL 缓存与使用 Win32 文件相关函数非常相似。FindFirst(带有某些参数)返回一个句柄,FindNext(直到没有更多),等等。我开发了一组类来处理繁琐的工作。您可以在 UrlCacheUtil.h/.cpp 文件中找到这些类。

该应用程序具有自文档化的功能(臭名昭著的最后一句话)。我将让您从中获得您想要的东西。详细信息对话框是非模式化的,因此您可以在滚动浏览缓存条目时将其保留在屏幕上。

一些有趣的说明

  • 肯定有一些未记录的 CacheEntryType 被使用。我怀疑 IE 为其自身内部使用创建了一些。
  • 组对我来说有点神秘。我还没有遇到带有名称的组。我怀疑所有条目默认情况下都进入一个未命名的组。

历史

2003年6月9日 - 提交文章。

© . All rights reserved.