http://dieseyer.de • all rights reserved • © 2011 v11.4

'v2.4***************************************************
' File: Verz-Suchen-Loeschen.VBS
' Autor: dieseyer@gmx.de
' dieseyer.de
'
' Skript ist Ergebnis einer Newsgroup-Anfrage: Auf einem
' Server müssen die 'Temporary Internet Files' in allen
' ...\user\... Verzeichnissen komplett gelöscht werden.
'*******************************************************

Option Explicit

Dim UserVerz, newpath, LoeschVerz
Dim i, n, index, Txt(), Text, Text1, TextX
Dim WSHShell, FSO


Set WSHShell = WScript.CreateObject("WScript.Shell")
Set fso = WScript.CreateObject("Scripting.FileSystemObject")

UserVerz = "C:\User"
LoeschVerz = "Temporary Internet Files"
' Temporary Internet Files

If not (fso.FolderExists(UserVerz)) Then
MsgBox UserVerz & " - Verzeichnis existiert nicht!", , WScript.ScriptName
WScript.Quit
End If

' Hole Ordner
newpath = fso.GetFolder(UserVerz)

index = 1

RecFolder index, newpath ' Hole Ordnerauflistung mit "Sub RecFolder"

For i = 1 to Ubound(Txt) ' Hole Ergebnis aus Txt(i) = Ordnerauflistung
Text = Text & Txt(i)
Next

Text1 = Split(Text, vbCRLF) ' Array Text in Zeilen aufteilen

Text = ""
n = 0
For i = 0 to Ubound(Text1)
if FSO.FolderExists(Text1(i) & "\" & LoeschVerz) then
fso.DeleteFolder(Text1(i) & "\" & LoeschVerz)
Text = Text & Text1(i) & vbCRLF
n = n +1
End If
Next

TextX = "In folgende " & n & " Verzeichnissen wurden """ & loeschVerz & """ gelöscht:" & vbCRLF & vbCRLF
TextX = TextX + Text

if not n = 0 then MsgBox TextX, , WScript.ScriptName
if n = 0 then MsgBox "Es gab keine """ & loeschVerz & """ in """ & UserVerz & """ ", , WScript.ScriptName

WScript.Quit


Sub RecFolder (idx, path)
' Autor: (c) Günter Born
'*********************************************************

' Rekursive Ordnerbearbeitung (hole Unterordner)
Dim oFolders, oSubFolder, oFolder

' Hole Folders-Auflistung
Set oFolders = fso.GetFolder(path)
Set oSubFolder = oFolders.SubFolders
Redim Preserve Txt(idx) ' redim String-Array
For Each oFolder in oSubFolder ' alle Ordner
Txt(idx) = Txt(idx) & path & "\" & oFolder.name & vbCRLF
' Unterordner rekursiv suchen
Call RecFolder (idx+1, path & "\" & oFolder.name)
Next

Set oFolders = Nothing ' Variable freigeben
Set oSubFolder = Nothing
End Sub


http://dieseyer.de • all rights reserved • © 2011 v11.4