程序中如何清空IE的缓存

dyny 2004-08-18 08:48:58
程序中如何清空IE的缓存
用什么procedure or API
不要告诉我,删掉Temporary Internet Files
...全文
138 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cronuz 2004-08-20
  • 打赏
  • 举报
回复
不応該呀、「FindFirstUrlCacheEntry」是OS内核「WinInet DLL」里的東東、
与IE的版本没関係、我用着没有問題呀。

現給出大版 technofantasy [原作] 的作品↓
http://dev.csdn.net/develop/article/13/13111.shtm

他用的是「FindnextUrlCacheEntryEx」関数、NI試試看。
飞天揽月 2004-08-19
  • 打赏
  • 举报
回复
用代码直接删除
dyny 2004-08-19
  • 打赏
  • 举报
回复
运行后观察
Temporary Internet Files\Content.IE5
中文件并没少

跟踪程序,发现 if hCacheDir <> 0 then 中的代码从未被执行,即 hCacheDir总是为 0
cronuz 2004-08-18
  • 打赏
  • 举报
回复
//uses WinInet;
procedure DeleteIECache;
var
lpEntryInfo: PInternetCacheEntryInfo;
hCacheDir: LongWord;
dwEntrySize: LongWord;
begin
dwEntrySize := 0;
FindFirstUrlCacheEntry(nil, TInternetCacheEntryInfo(nil^), dwEntrySize);
GetMem(lpEntryInfo, dwEntrySize);
if dwEntrySize > 0 then lpEntryInfo^.dwStructSize := dwEntrySize;
hCacheDir := FindFirstUrlCacheEntry(nil, lpEntryInfo^, dwEntrySize);
if hCacheDir <> 0 then
begin
repeat
DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName);
FreeMem(lpEntryInfo, dwEntrySize);
dwEntrySize := 0;
FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(nil^), dwEntrySize);
GetMem(lpEntryInfo, dwEntrySize);
if dwEntrySize > 0 then lpEntryInfo^.dwStructSize := dwEntrySize;
until not FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^, dwEntrySize);
end;
FreeMem(lpEntryInfo, dwEntrySize);
FindCloseUrlCache(hCacheDir);
end;

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧