WNetAddConnection2 вызывает ошибку «Отказано в доступе» - PullRequest
0 голосов
/ 24 сентября 2018

Я пытаюсь подключиться к файлу в локальной сети.Этот файл доступен всем и имеет права на чтение и запись.Я не установил пароль.

Я могу получить доступ к этому файлу в Windows Explorer на своем компьютере, я могу читать и записывать его.

Однако, когда я пытаюсь подключиться к файлуиспользуя приведенный ниже код, WNetAddConnection2 возвращает 5, что означает «Доступ запрещен».

Я использую VS 2017 как администратор, просто убедитесь, что у меня достаточно учетных данных, но это ничего не меняет.

Когда я запускаю свой код, у меня не открывается этот файл в проводнике Windows или около того.

Кто-нибудь может подсказать, что я мог бы проверить дальше?

Спасибо!

Private Sub btnServer_Click(sender As Object, e As EventArgs) Handles btnServer.Click

    Dim nr As New NETRESOURCE
    nr.dwType = RESOURCETYPE_DISK
    nr.lpRemoteName = "\\WIN-AJUUS3V93E5\Users\MyUser\Desktop\vm7share\aa.user.db"

    Dim iRet As UInteger
    iRet = WNetAddConnection2(nr, "", "", 0)
    If iRet <> NO_ERROR Then
        If iRet = 65 Then
            MessageBox.Show("Wrong path!")
        ElseIf iRet = 1219 Then
            MessageBox.Show("Another connection (perhaps in Windows Explorer) already exists. Close that connection first!")
        ElseIf iRet = 5 Then
            MessageBox.Show("Access denied!")
        Else
            Throw New Exception("WNetAddConnection2 failed.")
        End If
    End If

End Sub

1 Ответ

0 голосов
/ 24 сентября 2018

Проблемы с парой здесь.

2-й и 3-й аргументы функции - это user & password.Документация говорит, что для использования текущего зарегистрированного пользователя необходимо передать значение null.Вместо этого вы передаете пустые строки.Попробуйте заменить "" на null и посмотрите, что произойдет.

Еще один, я думаю, вы предоставляете слишком конкретный удаленный ресурс.Я не думаю, что вы можете WNetAddConnection2 для доступа к отдельному файлу.Укажите только сервер + общий ресурс, т. Е. "\\WIN-AJUUS3V93E5\Users" Если это будет работать нормально, попробуйте использовать каталог, т. Е. "\\WIN-AJUUS3V93E5\Users\MyUser\Desktop\vm7share\

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...