nein wird nicht ausgeführt
Wie oben aber beschrieben - bei so 500-1000 Dateien kein Problem aber bei mehr kommt die Fehlermeldung
oder wie ich meine wenn ich es 2-3 durchlaufen laße
Aber hier mein Code nochmal - womöglich hab ich ja hier irgendwoein Fehler drin
Delphi-Quellcode:
//IE URLHistoryCache lesen Verläufe
Procedure IECache_URLHistory_Lesen_IECU();
var
ie_cache : PINTERNETCACHEENTRYINFO;
size_dw : DWord;
cache_dir_dw : DWord;
icon_list_il : HImageList;
list_item_li : TListItem;
file_info_fi : TSHFileInfo;
begin
//Icon laden
//Haupt_Form.Wartung_Temp_ImageList1.Clear;
icon_list_il := HImageList(SHGetFileInfo('', 0, file_info_fi, SizeOf(file_info_fi), SHGFI_SYSICONINDEX or SHGFI_ICON));
if (icon_list_il <> 0) then
begin
Haupt_Form.Icon_Cache_ImageList1.Handle := icon_list_il;
Haupt_Form.Icon_Cache_ImageList1.Height := 16;
Haupt_Form.Icon_Cache_ImageList1.Width := 16;
end;
//Alles löschen
Haupt_Form.Wartung_ListView11.Items.Clear;
size_dw := 65536;
ie_cache := AllocMem(size_dw);
try
cache_dir_dw := FindFirstUrlCacheEntry(NIL, ie_cache^,size_dw);
while cache_dir_dw <> 0 do
begin
Application.ProcessMessages;
if ((ie_cache^.CacheEntryType AND URLHISTORY_CACHE_ENTRY) = URLHISTORY_CACHE_ENTRY) then
begin
//Name
list_item_li := Haupt_Form.Wartung_ListView11.Items.Add;
list_item_li.Caption := ie_cache^.lpszSourceUrlName;
//Icon
Haupt_Form.Wartung_ListView11.SmallImages.Handle := SHGetFileInfo(ie_cache^.lpszLocalFileName, 0, file_info_fi, SizeOf(file_info_fi), SHGFI_SYSICONINDEX or SHGFI_ICON);
list_item_li.ImageIndex := file_info_fi.iIcon;
//File Anzahl
Haupt_Form.Wartung_Label10.Caption := IntToStr(list_item_li.Index + 1);
//Suche Abbrechen
If (g_flag_b = True) then
begin
g_flag_b := False;
Break;
end;
end;
size_dw := 65536;
if not FindNextURLCacheEntry(cache_dir_dw,ie_cache^,size_dw) then
begin
cache_dir_dw := 0;
end;
end;
finally
FreeMem(ie_cache,65536);
end;
end;