Einzelnen Beitrag anzeigen

Benutzerbild von HomerGER
HomerGER

Registriert seit: 9. Jun 2003
390 Beiträge
 
Delphi 7 Professional
 
#3

Re: Speicher u. Handle Fehler beim löschen von Cookies,Verla

  Alt 11. Aug 2004, 21:11
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;
  Mit Zitat antworten Zitat