Как очистить кэш в IE?

Previous  Top  Next

    
 

 

В примере описывается как программно в Internet Explorer нажать кнопку "Clear cache".

 

Вам нужно будет использовать WinINet в Вашей TfrmMain:

Code:

Uses WinINet;

 

и добавить к TButton следующий обработчик btnEmptyCache:

 

Code:

Procedure TfrmMain.btnEmptyCacheClick( Sender : TObject );

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;

 

 

 

 

©Drkb::03506

Взято из http://forum.sources.ru