Главная страница
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.057 c
14-1109156186
вредитель
2005-02-23 13:56
2005.03.13
Если бы....


9-1102869083
WandR
2004-12-12 19:31
2005.03.13
Нормальный форум


1-1108961311
buka
2005-02-21 07:48
2005.03.13
Поисковая система


3-1108067059
Коля
2005-02-10 23:24
2005.03.13
Загрузка bmp в поле


9-1103047588
FUNKy
2004-12-14 21:06
2005.03.13
Вопрос про определение дистанции до поверхности Glscene/OpenGL