In Kix ein Verzeichnis löschen
Ich will mit Kix ein Verzeichnis - wenn vorhanden - löschen.
Hallo allerseits,
nachdem ich mich jetzt seit kurzem etwas mit Kixtart befasst habe stehe ich vor folgendem Problem: Ich will ein Verzeichnis - sofern es existiert - löschen.
Folgenden Code habe ich dafür zusammengeschrieben:
Das Problem ist, dass @16034 = 3 ist und das Verzeichnis - welches nicht leer ist - nicht gelöscht wird.
Hat irgendwer eine Idee woran das liegen kann?
Schon mal vielen Dank.
MfG. mhard666
So, hab grad noch versucht den Inhalt des Verzeichnisses mit DEL vor dem Löschen des Selbigen zu löschen - es passiert nix. Die enthaltenen Dateien bleiben nach wie vor in dem Verzeichnis und @16034 = 0.
Ahja, System ist Win2k3 Server, ich bin mit Admin-Rechten angemeldet und die Verzeichnisse sind auch ok - sprich vorhanden.
Hallo allerseits,
nachdem ich mich jetzt seit kurzem etwas mit Kixtart befasst habe stehe ich vor folgendem Problem: Ich will ein Verzeichnis - sofern es existiert - löschen.
Folgenden Code habe ich dafür zusammengeschrieben:
$BackupDir = "E:\wss3_backup\"
$DestinationDir = "E:\wss3_backup\"
$FileName = Dir($BackupDir + "spbr*.")
While $FileName <> "" and @ERROR = 0
$FileTime = GetFileTime($BackupDir + $FileName, 1)
$TimeStamp = SubStr($FileTime, 1, 4) + SubStr($FileTime, 6, 2) + SubStr($FileTime, 9, 2) + SubStr($FileTime, 12, 2) + SubStr($FileTime, 15, 2) + SubStr($FileTime, 18, 2)
? "\\ODIN\NETLOGON\7za.exe " + $DestinationDir + $TimeStamp + ".zip " + $BackupDir + $FileName + " -r"
SHELL "\\ODIN\NETLOGON\7za.exe a " + $DestinationDir + $TimeStamp + ".zip " + $BackupDir + $FileName + " -r"
; ========== File/Dir löschen - je nach FileAttribute
IF EXIST ($BackupDir + $FileName)
? $BackupDir + $FileName
IF GETFILEATTR ($BackupDir + $FileName) & 16
? $BackupDir + $FileName + "\*.* /s"
? @ERROR
RD $BackupDir + $FileName + " /s"
IF @ERROR <> 0
? "Fehler " + @ERROR + " beim Löschen des Verzeichnisses."
ELSE
? "Verzeichnis " + CHR(34) + $BackupDir + $FileName + CHR(34) + " gelöscht."
ENDIF
ELSE
DEL $BackupDir + $FileName ; (löschen wenn Datei existiert)
? "Datei " + CHR(34) + $BackupDir + $FileName + CHR(34) + " gelöscht."
ENDIF
ENDIF
$FileName = Dir()
Loop
Hat irgendwer eine Idee woran das liegen kann?
Schon mal vielen Dank.
MfG. mhard666
So, hab grad noch versucht den Inhalt des Verzeichnisses mit DEL vor dem Löschen des Selbigen zu löschen - es passiert nix. Die enthaltenen Dateien bleiben nach wie vor in dem Verzeichnis und @16034 = 0.
Ahja, System ist Win2k3 Server, ich bin mit Admin-Rechten angemeldet und die Verzeichnisse sind auch ok - sprich vorhanden.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 117126
Url: https://administrator.de/forum/in-kix-ein-verzeichnis-loeschen-117126.html
Ausgedruckt am: 11.04.2025 um 11:04 Uhr
3 Kommentare
Neuester Kommentar

Servus,
sollte dein Problem lösen.
Gruß
edit Zeile 5 bezog sich auf dein ursprüngliches Skript.. /edit
edit² Zeile 17 /edit also...
edit³ und lieber nicht Error abfragen, sondern noch ein if exist - macht (in meinen Augen) mehr Sinn /edit
05. RD $BackupDir + $FileName + " /s /q"
sollte dein Problem lösen.
Gruß
edit Zeile 5 bezog sich auf dein ursprüngliches Skript.. /edit
edit² Zeile 17 /edit also...
edit³ und lieber nicht Error abfragen, sondern noch ein if exist - macht (in meinen Augen) mehr Sinn /edit
Ich nutze diese Funktion zum löschen von Verzeichnissen.
Function DelDir($Pathname)
Dim $Filename
$Filename = Dir($Pathname + "\*.*")
While $Filename <> "" And @ERROR = 0
If $Filename <> "." And $Filename <> ".."
If (GetFileAttr($Pathname + "\" + $Filename) & 16)
DelDir($Pathname + "\" + $Filename)
SetFileAttr($Pathname + "\" + $Filename, 128)
Rd ($Pathname + "\" + $Filename)
Else
SetFileAttr($Pathname + "\" + $Filename, 128)
Del ($Pathname + "\" + $Filename)
EndIf
EndIf
$Filename = Dir()
Loop
EndFunction