Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Cookies löschen

Cookies löschen
21.08.2008 19:40:04
Peter
Mit folgendem Programm habe ich versucht, Cookies im Systemordner "Temporary Internet Files" zu löschen. Jeder beliebige Ordner kann mit dem Makro geleert werden.
Von Hand können die Cookies gelöscht werden. Beim Ordner "Temporary Internet Files" gibt es ein Attibut "Versteckt" (rechte Maustaste und Eigenschaften), dass ich nicht weg bringe. Ob das Problem mit dem Attribut zusammen hängt?

Sub OrdnerLeeren_Original()
'Achtung sind die Dateien sind endgültig weg!!
Dim DirectoryToDelete As String
DirectoryToDelete = "c:\test"
On Error Resume Next
Kill (DirectoryToDelete & "\*.*")
End Sub


Danke für die Unterstützung.

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Cookies löschen
21.08.2008 19:53:00
Ramses
Hallo
Blöde Frage:
Muss bei dir EXCEL auch noch Kaffee kochen können ? :-)
Warum stellst du dir das nicht gleich im Browser ein ?
"...Mit folgendem Programm habe ich versucht, Cookies im Systemordner "Temporary Internet Files" zu löschen. ..."
Wenn dem so ist, dann glaube ich das gerne, dass der Code nicht funktioniert.
Der Pfad der Cookies liegt definitiv nicht in "C:\Test" :-)
Läuft zum Zeitpunkt der Ausführung deines Makros noch eine Browser Instanz, dann gibt es eine Zugriffsverletzung und der Code bricht ab ohne Fehlermeldung wegen "On Error Resume Next"
Wenn es an dem Attribut liegen sollte, dann musst via "Shell" und "CMD Attrib" das "Hidden" Flag vorher entfernen und anschliessend wieder setzen.
Gruss Rainer

Anzeige
AW: Cookies löschen
21.08.2008 20:44:27
Ingo
Hallo Rainer!
Achte bitte mal auf meinen Excel-Level !
Bei Deiner Antwort verstehe ich nur "Bahnhof".
Und außerdem, was heißt hier "Blöde Frage" und "Kaffee kochen".
Ich dachte dieses Forum würde einen eine Frage beantworten und nicht "dumm da stehen lassen !!!
Ich hoffe jemand anderes versteht meine Frage und ist so freundlich mir zu helfen !!!
ingo

AW: Cookies löschen
21.08.2008 20:47:13
Ingo
Hallo Rainer !!!
Sorry, ich war in der falschen Antwort !!!
Ich war hier der "Blöde" !!!
Nochmals Sorry !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ingo

AW: Cookies löschen
21.08.2008 22:13:31
Ramses
Hallo
Probier mal
ACHTUNG: Dateien werden unwiderruflich gelöscht !!"
Sub DemoAttrib()
    Dim x As Variant
    Dim tarPath As String
    'mit Backslash am Ende
    tarPath = "C:\DeinPfad\"
    'Versteckte Dateien anzeigen
    'Hierzu muss das HIDDEN Flag entfernt werden
    x = Shell("cmd.exe Attrib -H " & tarPath & "*.* /S /D")
    Kill tarPath & "*.*"
End Sub

Gruss Rainer

Anzeige
AW: Cookies löschen
22.08.2008 09:17:03
Nepumuk
Hi,
oder so:
' **********************************************************************
' Modul: Modul3 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" ( _
    ByVal hwndOwner As Long, _
    ByVal nFolder As Long, _
    ByRef pidl As ITEMIDLIST) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" ( _
    ByVal pidl As Long, _
    ByVal pszPath As String) As Long

Private Type ITEMID
    cb As Long
    abID As Byte
End Type

Private Type ITEMIDLIST
    mkid As ITEMID
End Type

Private Const CSIDL_COOKIES As Long = &H21

Private Const NOERROR As Long = 0&

Public Sub prcClear_Cookies()
    Dim objFSO As Object, objFile As Object
    Dim strPath As String
    
    strPath = fncGetPath(CSIDL_COOKIES)
    If strPath <> "" Then
        
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        
        On Error Resume Next
        For Each objFile In objFSO.GetFolder(strPath).Files
            objFile.Delete
        Next
        
        Set objFSO = Nothing
        
    Else
        MsgBox "Pfad für Cookies nicht gefunden", vbCritical, "Fehler"
    End If
End Sub

Private Function fncGetPath(Num As Long) As String
    Dim lngResult As Long
    Dim strBuffer As String
    Dim udtIDl As ITEMIDLIST
    lngResult = SHGetSpecialFolderLocation(0&, Num, udtIDl)
    If lngResult = NOERROR Then
        strBuffer = Space$(512)
        lngResult = SHGetPathFromIDList(ByVal udtIDl.mkid.cb, ByVal strBuffer)
        If lngResult Then fncGetPath = _
            Left$(strBuffer & vbNullChar, InStr(strBuffer, vbNullChar) - 1)
    End If
End Function

Gruß
Nepumuk

Anzeige
AW: Cookies löschen
22.08.2008 14:29:10
Peter
Hallo Nepomuk,
Danke für deinen VBA Code. Leider bin ich noch nicht ganz am Ziel.
Dein Programm liefert mir als Verzeichnis für die Cookies ""C:\Dokumente und Einstellungen\nachbaur\Cookies".
Ich sollte jedoch den gesamten Inhalt des Verzeichnisses "C:\Dokumente und Einstellungen\nachbaur\Lokale Einstellungen\Temporäre Internetdateien" löschen.
Den Ordner kann ich von Hand ohne Probleme löschen, doch geht das leider nicht per VBA.
Dieser Ordner scheint ein Spezialordner zu sein.
Nun wie kann ich den Inhalt dieses Ordners löschen?
Danke im Voraus.
Grüße
Peter

Anzeige
AW: Cookies löschen
22.08.2008 15:40:21
Nepumuk
Hallo Peter,
ich lese da als Betreff Cookies löschen. Die Cookies in den Temporären Internetdateien sind die, welche zuerst auf die Platte geschrieben werden. Hast du keine Sperre drin, werden diese in den Cookie-Ordner verschoben, Die in den Temps sind dann unerheblich.
Aber wenn du meinst, dass das Excel besser kann als die Internetoptionen:
' **********************************************************************
' Modul: Modul4 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" ( _
    ByVal hwndOwner As Long, _
    ByVal nFolder As Long, _
    ByRef pidl As ITEMIDLIST) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" ( _
    ByVal pidl As Long, _
    ByVal pszPath As String) As Long

Private Type ITEMID
    cb As Long
    abID As Byte
End Type

Private Type ITEMIDLIST
    mkid As ITEMID
End Type

Private Const CSIDL_INTERNET_CACHE As Long = &H20

Private Const NOERROR As Long = 0&

Public Sub prcClear_Temporary_InternetFiles()
    Dim objFSO As Object, objFile As Object
    Dim objFolder0 As Object, objFolder1 As Object, objFolder2 As Object
    Dim strPath As String
    
    strPath = fncGetPath(CSIDL_INTERNET_CACHE)
    If strPath <> "" Then
        
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        
        On Error Resume Next
        Set objFolder0 = objFSO.GetFolder(strPath)
        For Each objFolder1 In objFolder0.SubFolders
            For Each objFolder2 In objFolder1.SubFolders
                objFolder2.Delete
            Next
        Next
        For Each objFile In objFolder0.Files
            objFile.Delete
        Next
        
        Set objFSO = Nothing
        
    Else
        MsgBox "Pfad für Temporäre Internetdateien nicht gefunden", vbCritical, "Fehler"
    End If
End Sub

Private Function fncGetPath(Num As Long) As String
    Dim lngResult As Long
    Dim strBuffer As String
    Dim udtIDl As ITEMIDLIST
    lngResult = SHGetSpecialFolderLocation(0&, Num, udtIDl)
    If lngResult = NOERROR Then
        strBuffer = Space$(512)
        lngResult = SHGetPathFromIDList(ByVal udtIDl.mkid.cb, ByVal strBuffer)
        If lngResult Then fncGetPath = _
            Left$(strBuffer & vbNullChar, InStr(strBuffer, vbNullChar) - 1)
    End If
End Function

Gruß
Nepumuk

Anzeige
AW: Cookies löschen
24.08.2008 20:10:00
Herbert
Hallo Nepomuk,
Besten Dank für deine tolle Unterstützung.
Du hast recht, das mit den Cookies ist nur die halbe Wahrheit. Ich will schlicht weg den gesamten Inhalt des Ordners "Temporäre Internet Dateien" löschen und das tut ja dein VBA Programm perfekt.
Danke nochmals.
Grüße
Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige