Mega Code Archive

 
Categories / Delphi / LAN Web TCP
 

How to clear Internet Explorer cache

Title: How to clear Internet Explorer cache Question: Wanna simulate/emulate the "Clear cache" button of Internet Explorer? There's how to make it. Answer: Unit IECache; Interface Uses WinINet, Windows; Procedure ClearIECache; Implementation Procedure ClearIECache; 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; End.