raplay 10 Geschrieben 12. Dezember 2007 Melden Teilen Geschrieben 12. Dezember 2007 Hallo zusammen Ich hab folgendes Problem::: Ein Script von mir enthält volgenden Code Set FSO = CreateObject("Scripting.FileSystemObject") If FSO.FolderExists (ZielVerzeichnis & Benutzername) Then FSO.DeleteFolder "C:\WSH" End If Es kommt dass mir die Rechte fehlen diesen Ordner zu löschen... Dan hab ich es mit nem Bat file probiert::: del "C:\WSH" Es wird gefrag, ob den Ordner löschen möchte, ich bestätige. Es komt kein Fehler, es komt einfach die Nächste Zeile. Doch der Ordner ist immer noch da... Wen ich in den Expolrer gehe, den Ordner anklicke und Delet drücke, wird er brav gelöst.... Ich bin ich in allen 3 Fällen als Administrator angemeldet. Danke euch und Grüsse Rafael Zitieren Link zu diesem Kommentar
vmorbit 10 Geschrieben 12. Dezember 2007 Melden Teilen Geschrieben 12. Dezember 2007 probier mal: If FSO.FolderExists (ZielVerzeichnis & Benutzername) Then FSO.DeleteFolder "C:\WSH", [color="Red"]True[/color] Zitieren Link zu diesem Kommentar
raplay 10 Geschrieben 4. Januar 2008 Autor Melden Teilen Geschrieben 4. Januar 2008 probier mal: If FSO.FolderExists (ZielVerzeichnis & Benutzername) Then FSO.DeleteFolder "C:\WSH", [color="Red"]True[/color] DANKE!!! Hab leider noch ein Problem. An einem XP PC, loggen sich regelmässg verschiedene Users ein, die dort hinterlassenen Profile sollen jede woche Gelöst werden, auser von 4 Benutzern. Ich das bislang so gemacht: Erst verschiebe ich die Ordner der Benutzer die nicht gelöst werden sollen in einen Ordner C:\Profile, dan lösche ich den C:\Dokumente und Einstellung, erstelle einen Ordner C:\Dokumente und Einstellungen und kopiere die Profile aus C:\Profile wieder zurück. Das Klappt alles erstaundlicherweise auch. Wen sich jedoch ein Benutzer einloggt, von dem das Profil nicht gelöst wurde, wird der Ordner in C:\Dokumente und einstellungen nicht erkannt. Das heisst wen zb. sich Rafael einloggt, wird anstadt den Ordner C:\Dokumente und Einstellungen\Rafael zu nehmen ein neuer erstellt mit dem Namen Rafael.Domainname. Woran liegt das? Danke euch Zitieren Link zu diesem Kommentar
vmorbit 10 Geschrieben 4. Januar 2008 Melden Teilen Geschrieben 4. Januar 2008 Du kannst nicht einfach das Profile wegkopieren und rumverschieben... Glaub da bekommst du Probleme mit den Berechtigungen...sieh dir mal den Owner des Profils an...ist das nach wie vor der User selbst? Ich würde das anders lösen...sieh dir mal das an: How To Delete User Profiles by Using the User Profile Deletion Utility (Delprof.exe) in Windows 2000 Zitieren Link zu diesem Kommentar
raplay 10 Geschrieben 4. Januar 2008 Autor Melden Teilen Geschrieben 4. Januar 2008 Du kannst nicht einfach das Profile wegkopieren und rumverschieben...Glaub da bekommst du Probleme mit den Berechtigungen...sieh dir mal den Owner des Profils an...ist das nach wie vor der User selbst? Ich würde das anders lösen...sieh dir mal das an: How To Delete User Profiles by Using the User Profile Deletion Utility (Delprof.exe) in Windows 2000 JA so hatte ich das auch schon, aber da kannst nicht bestimmte Profile nicht löschen.... Nein mit den rechten habe ich kein prob... wird beim abmelden ausgeführt. Zitieren Link zu diesem Kommentar
raplay 10 Geschrieben 8. Januar 2008 Autor Melden Teilen Geschrieben 8. Januar 2008 JA so hatte ich das auch schon, aber da kannst nicht bestimmte Profile nicht löschen.... Nein mit den rechten habe ich kein prob... wird beim abmelden ausgeführt. So funktioniert... Dim fs, f, f12, fc, s, _ Benutzername, Benutzername1, Benutzername2, _ Benutzername3, Benutzername4, Benutzername5, _ Benutzername6, Benutzername7, Benutzername8, _ Benutzername10, Benutzername11 ShowFolderList("C:\Dokumente und Einstellungen") Sub ShowFolderList(folderspec) Dim fs, f, f12, fc, s Set fs = CreateObject("Scripting.FileSystemObject") Set f = fs.GetFolder(folderspec) Set fc = f.SubFolders For Each f12 In fc s = f12.name WScript.echo(s) If s = "XXX" Then ElseIf s = "xxx" Then ElseIf s = "xxx" Then ElseIf s = "bartholo" Then ElseIf s = "xxxl" Then ElseIf s = "MxxlM" Then ElseIf s = "xxx-admin" Then ElseIf s = "Sxxl" Then ElseIf s = "All Users" Then ElseIf s = "Administrator" Then ElseIf s = "Default User" Then Else fs.DeleteFolder("C:\Dokumente und Einstellungen\" + s), True End If Next End Sub Zitieren Link zu diesem Kommentar
Cybquest 36 Geschrieben 8. Januar 2008 Melden Teilen Geschrieben 8. Januar 2008 Kleine Anregung hierzu: Z.B. ... Select Case s Case "XXX", "xxx", "bartholo", "xxxl", "MxxlM", "xxx-admin", "Sxxl", "All Users", "Administrator", "Default User" 'Nix machen Case Else fs.DeleteFolder("C:\Dokumente und Einstellungen\" + s), True End Select ... ...statt der vielen elseif's Zitieren Link zu diesem Kommentar
raplay 10 Geschrieben 9. Januar 2008 Autor Melden Teilen Geschrieben 9. Januar 2008 XD stimmt.... Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.