Как очистить кэш Internet Explorer?

Данная процедура, написанная на языке Delphi, очищает кэш браузера Internet Explorer:

uses WinInet;
...
procedure EmptyIECache;
var
  lpEntryInfo: PInternetCacheEntryInfo;
  hCacheDir: LongWord;
  dwEntrySize: LongWord;
  dwLastError: LongWord;
begin
  dwEntrySize := 0;
  FindFirstUrlCacheEntry(nil, TInternetCacheEntryInfo(nil^), dwEntrySize);
  GetMem(lpEntryInfo, dwEntrySize);
  hCacheDir := FindFirstUrlCacheEntry(nil, lpEntryInfo^, dwEntrySize);
  if (hCacheDir <> 0) then
    DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName);
  FreeMem(lpEntryInfo);
  repeat
    dwEntrySize := 0;
    FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(nil^), dwEntrySize);
    dwLastError := GetLastError();
    if (GetLastError = ERROR_INSUFFICIENT_BUFFER) then
    begin
      GetMem(lpEntryInfo, dwEntrySize);
      if (FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^, dwEntrySize)) then
        DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName);
      FreeMem(lpEntryInfo);
    end;
  until (dwLastError = ERROR_NO_MORE_ITEMS);
end;

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *