-
Добрый день. При использовании функции WNetAddConnection2 для подключения к общему ресурсу
int dwRetVal = WNetAddConnection2( &nr, password.c_str(), login.c_str(), CONNECT_TEMPORARY );
появляется системная ошибка ERROR_SESSION_CREDENTIAL_CONFLICT 1219 - "представленные учетные данные конфликтуют с существующим набором учетных данных".
Помогите пожалуйста, почему появляется такая ошибка?
-
Потому что нельзя к одному серверу подключиться с разных учётных записей одновременно. Придётся старое соединение убить. Зачем так сделано - не знаю...
-
Соединения нет, потому что еще не подключились. Разрыв соединения поэтому WNetCancelConnection2( RemoteName.c_str(), 0, False ) также выдает ошибку 2250 - error_not_connected
К тестовому серверу удалось подключиться под другим пользователем, а к реальному нет. Особенность в сервере. Это нужно, так как у пользователей доступа к серверу нет, только у программиста. Поэтому решили, что в программе можно подключиться к серверу под логином и паролем программиста, у которого есть доступ к сетевому ресурсу. Соединение всегда проходит, если не задавать логин и пароль, значения берутся по умолчанию. WNetAddConnection2( &nr, NULL, NULL, CONNECT_TEMPORARY )
-
Ответ простой. Нужно использовать вместо \\server\folder IP адрес
|