Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

Как используя Wininet команды (wininet.dll) очистить кэш?   Найти похожие ветки 

 
JorSand   (2005-01-02 22:23) [0]

Кэш - это то, что винды после закачки файлов по ftp (и не только) хранят в каталогах C:\Documents and Settings\...\Local Settings\Temporary Internet Files\Content.IE5\
дабы ты, при их повторной качке не качал?

ясно что надо юзать DeleteUrlCacheEntry, но что то не получается,
есть ли способ сразу указать не использовать кэш, без этого гемороя (перодической его очисткой)?

Я использую след функции:
InternetOpen -> InternetConnect -> FtpOpenFile -> InternetReadFile

При испоьзовании

hUrl:=InternetOpenUrl(hInet,
                 pchar(xUrl),
                 pchar(Header),
                 strlen(pchar(Header)),                      INTERNET_FLAG_NO_CACHE_WRITE,0);

все работает, но с этой функцией не пашет FtpOpenFile
как быть? Может кто - уже сталкивался с этой проблемой. И еще довесок будет ли в такой связке пахать InternetSetFilePointer (для организации докачки)?


 
Seeker ©   (2005-01-03 16:14) [1]

Наверное так:

procedure ClearCashe;
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;

Можешь чистить выборочно( только то что тебе нужно) так будет быстрее.Если енто не то, пардон.



Страницы: 1 вся ветка

Текущий архив: 2005.03.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.04 c
14-1108703061
DelphiN!
2005-02-18 08:04
2005.03.13
Жизнь в Одессе


14-1108834039
Vaitek
2005-02-19 20:27
2005.03.13
3 задачи


4-1106906105
grigory
2005-01-28 12:55
2005.03.13
Послать сообщение CheckBox у!


1-1109343095
Ученик
2005-02-25 17:51
2005.03.13
Системы счисления + дробные числа


1-1109255995
AdmeraL
2005-02-24 17:39
2005.03.13
REGISTRY