|
|
Проблема со скриптом очистки обменной папки
От предыдущего админа остался скрипт на очистку обменной папки пользователей.
При выполнении скрипта Windows Script Host выдает ошибку:
>Строка: 19
>Символ: 3
>Ошибка: Файл уже существует
>Код: 800A003A
Помогите разобраться в чем проблема. Как заставить FSO перезаписывать папки. Да и непонятно почему идет перезапись, если в скрипте удаляются папки и файлы (FSO.DeleteFolder // FSO.DeleteFile) в каталоге Exchange.
Собственно сам скрипт:
Код:
Dim FSO
Dim CMDName,DirName
Dim strFolderName
Dim strFullFolderName
Dim PatchF,PatchA
Dim objADsSecurity
Dim objSecurityDescriptor
Dim cmd
PatchF ="F:\Exchange"
set WshShell = WScript.CreateObject("WScript.Shell")
Set objGroup = GetObject("LDAP://cn=ExchangeUsers,OU=XXX,OU=XXX,OU=XXX,dc=domain,dc=ru")
Set FSO = CreateObject("Scripting.FileSystemObject")
set cmd = WScript.CreateObject("WScript.Shell")
FSO.DeleteFolder FSO.BuildPath(PatchF, "*.*"), True
FSO.DeleteFile FSO.BuildPath(PatchF, "*.*"), True
for each objMember in objGroup.Members
DirName = (objMember.sn+" "+objMember.givenName)
FSO.CreateFolder FSO.BuildPath (PatchF,DirName)
PatchA = FSO.BuildPath (PatchF,DirName)
CMDName = "CSCRIPT.EXE F:\script\XCACLS.VBS " & chr(34) & PatchA & chr(34) & " /g " & "domain\" & objMember.sAMAccountName & ":f " & chr(34) & "domain\Администраторы домена" & chr(34) & ":f " & chr(34) & "domain\Пользователи домена" & chr(34) & ":l " & chr(34) & "domain\Пользователи домена" & chr(34) & ":w >>1.log"
next
Wscript.Echo ("Done !!!")
|
Проще проверить существование:
Код:
strFolder = FSO.BuildPath(PatchF,DirName)
If Not FSO.FolderExists(strFolder) Then
FSO.CreateFolder strFolder
End If
|
Время: 13:14.
© OSzone.net 2001-