WNetAddConnection2 возвращает 1219 - PullRequest
6 голосов
/ 02 июня 2011

Я использую WNetAddConnection2 и WNetCancelConnection2 для сопоставления или отмены сопоставления дисков.

Я пытаюсь сделать следующее:
Я сопоставил папку (например, Folder1) на сервере (например, myserver). поэтому путь \\ myserver \ Folder1 и я сопоставляю его с диском X.
Теперь я хочу сопоставить другую папку (например, Folder2) на том же сервере, чтобы управлять Y программно.

Когда я вызываю метод WNetAddConnection2 после сопоставления одной папки, он возвращает 1219 вместо 0, и я получаю ошибку: множественные подключения к серверу или общему ресурсу одним и тем же пользователем, используя более одного имени пользователя, не разрешены. Отключите все предыдущие подключения к серверу или общему ресурсу и повторите попытку.

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

Я что-то упустил или мне нужно использовать структуру NETRESOURCE по-другому или еще что-нибудь?

Спасибо

Ответы [ 2 ]

4 голосов
/ 03 июня 2011

Вы также отображаете X: программно?Если да, то используете ли вы те же спецификации имени пользователя и пароля в вызовах WNetAddConnection2 ()?Ошибка 1219 указывает на то, что вы пытаетесь сопоставить несколько дисков одному серверу с использованием разных аутентификаций.Я успешно создал несколько WNetAddConnection2 () для нескольких общих ресурсов на одном сервере при использовании одной и той же комбинации пользователь / пароль.

3 голосов
/ 20 сентября 2016

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

...