Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 137
Благодарности: 24

Профиль | Отправить PM | Цитировать


Попробуй проверить такой код
Код: Выделить весь код
  

Set objWshNetwork = CreateObject( "WScript.Network" )
UsersFolderName = ucase((objNetwork.UserName))

' создаем папку пользователя, проверяя если она есть то идем дальше
     FolderUser = "\\server2\Shared_folder\school\" + UsersFolderName
     Set objFld1 = CreateObject("Scripting.FileSystemObject")
     If objFld1.FolderExists(FolderUser) Then
     Else
        ' если папки нет то создаем ее и назначаем права  
         Set objFolder1 = objFld1.CreateFolder(FolderUser)
        ' формируем строку с назначением прав на личную папку
         StrCmdRightUsers = "xcacls.exe " + FolderUser + " /g ""DOMAIN ADMINS"":F System:f " + UsersFolderName + ":с /y "
         RetVal = WshShell.Run("%COMSPEC% /c " & StrCmdRightUsers, 1, False) 
      End If


Set objShell = CreateObject("Shell.Application")

MapDrive "U:", FolderUser, "Пользовательский"
MapDrive "S:", "\\server2\Shared_folder\school\school", "Общий"

Sub MapDrive(strDrive, strPath, strName)
On Error Resume Next
objWshNetwork.RemoveNetworkDrive strDrive, vbTrue, vbTrue
objWshNetwork.MapNetworkDrive strDrive, strPath, vbTrue
objShell.NameSpace(strDrive).Self.Name = strName
End Sub

xcacls должен лежать в той же папке откуда скрипт запускаешь
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:12, 30-11-2009 | #3