ASP classic для создания папки, а затем изменения разрешений на нее - PullRequest
0 голосов
/ 16 июня 2010

Я относительно новичок во всем этом классическом программировании на ASP, и я не работаю над довольно сложным сценарием.По сути, сценарий создает учетную запись пользователя домена, а затем создает их домашнюю папку на сетевом компьютере.IE: \ SERVER \ DIR \ HOMEDIR.

У меня код работает превосходно, кроме случаев, когда речь идет о создании их домашнего каталога.Он создает папку, но получает ошибку доступа и отказывает в доступе к изменениям разрешений.У меня даже есть другой код, который будет перемещать папку и ее содержимое из одного каталога в другой.Я сделал все, что мог придумать, учетная запись IUSR_MACHINE даже является администратором домена.

Код ниже.У кого-нибудь есть предложения?Любая помощь будет принята с благодарностью!

strHomeFolder имеет форму: \ SERVER \ DIR \ DIR с двумя обратными слешами в начале.Я также пробовал это на локальном сервере с локальным путем (C: \ DIR \ DIR), но он также не работал, тот же доступ запрещен.*

Sub HomeDir()
        %>
        <br/>
        Inside of Homedir()<br/>


        <%
strHomeFolder = strHome & strUser
Set objFSO = server.CreateObject("Scripting.FileSystemObject")
Set objShell = server.CreateObject("Wscript.Shell")
If strHomeFolder <> "" Then
    If Not objFSO.FolderExists(strHomeFolder) Then
    On Error Resume Next
    objFSO.CreateFolder strHomeFolder
         If Err.Number <> 0 Then
         'On Error GoTo 0
         'Wscript.Echo "Cannot create: " & strHomeFolder
         End If
    'On Error GoTo 0
    End If

    On Error Resume Next

    If objFSO.FolderExists(strHomeFolder) Then
                %>
        <br/>
        folder exists<br/>
        strHomeFolder = <%=strHomeFolder%><br/>
        strUser = <%=strUser%><br/>

        <%
    'Assign user permission to home folder.
    cmdtxt = "%COMSPEC% /c Echo Y| cacls " & strHomeFolder & " /t /c /g Administrators:F " & "SYSTEM:F engineering2\" & strUser & ":F"
    intRunError = 25
    intRunError = objShell.run(cmdtxt, 2, True)
                %>
        <br/>
        intRunError = <%=intRunError%><br/>


        <%
        If intRunError <> 0 Then
        %>
        <br/>
        Calcs is balking.......intRunError = <%=intRunError%><br/>


        <%
        'Wscript.Echo "Error assigning permissions for user " _
        '& strUser & " to home folder " & strHomeFolder
        End If
    End If    
End If
Set objFSO = Nothing
Set objShell = Nothing
End Sub

1 Ответ

1 голос
/ 01 июля 2010

дали ли вы папке DIR доступ на чтение / запись?это нужно сделать на локальном и на сервере.Вы проверили это разрешение?

Кайо

...