Главная страница
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.033 c
1-1109338253
serega_man
2005-02-25 16:30
2005.03.13
Как программировать параметры exe файлов


1-1109323510
Dysan
2005-02-25 12:25
2005.03.13
большие числа


9-1102832958
GURU-ru
2004-12-12 09:29
2005.03.13
Как сделать, чтобы в GLScene не проходить сквозь стены


3-1108448610
first_may
2005-02-15 09:23
2005.03.13
BLOB


6-1104724424
Konstantin
2005-01-03 06:53
2005.03.13
Избранное как в IE