Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Trying to Delete Hundreds of Profiles from a Winnt Workstation box

Status
Not open for further replies.

Guest_imported

New member
Jan 1, 1970
0
Hi Im working in a company that has hundreds of customer service reps. A friend and i created a script that does work on non-profile based subfolders but fails when run as Adminstrator trying to delete the excess profile folders. Is there a work around for this. We keep getting a error "Acess Denied" when we try to run it live. But it works fine in folders like "Temp" with copied profiles. Is there some other
------------------------------------------------------------
'Delete Folder Script by Jason Smisek & Darren Lensky
'Version 0.1.5

FolderSpec = "C:\WINNT\Profiles"
FolderLength= Len(FolderSpec) +1

Dim fso, fc, f, fc2
Dim setDeleteBit
WshShell.SpecialFolders.Item("strFolderName") = strFolderPath
Set fso = CreateObject("Scripting.FileSystemObject")
Set fc = fso.GetFolder(FolderSpec)
Set fc2 = fc.SubFolders

dim KeepUsers
KeepUsers = Array("Administrator", "All Users", "Default User", "test", "jsmisek")

for Each i in KeepUsers
msg1 = msg1 & i & " "
Next

WScript.Echo "This will delete ALL but the following profiles:" & chr(13) & chr(13) & msg1
'line 21
For Each subFolder in fc2
'delete unless noted otherwise
setDeleteBit = 1
'optimize code to reduce numebr of loops
'if folder doesnt begin with an a, t, or d (as required accounts do) then delete automagically

Select Case LCase(Mid(subFolder,FolderLength,1))
Case "a", "d", "t", "j"
call ChizeckShizit
Case Else
setDeleteBit = 1
End Select

If setDeleteBit = 1 Then
Call deleteShizit
End If
Next

'Clear up memory
Set fso = Nothing
Set fc = Nothing
Set fc2 = Nothing

WScript.Echo "Please verify that the profiles were successfully deleted." & chr(13) & "Created by"

WScript.Quit

Sub deleteShizit
WScript.Echo "Deleting " & subFolder
'oProfileService.DeleteProfile(subFolder)
'subFolder.delete
End Sub

Sub ChizeckShizit

for Each i in KeepUsers
newDEL = LCase(FolderSpec & i)

If LCase(subFolder) = newDEL Then
setDeleteBit = 0
End If
Next
End Sub

------------------------------------------------------------
Any help would be greatly appreciated
 
Oh Btw "subfolder.delete" is accidently commented out(I was trying something and forgot to uncomment it out when i pasted it onto the website). when i run it, it isn't.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top