Функция WNetAddConnectionA (winnetwk.h)

Функция WNetAddConnection позволяет вызывающему приложению подключать локальное устройство к сетевому ресурсу. Успешное подключение является постоянным, что означает, что система автоматически восстанавливает подключение во время последующих операций входа.

Примечание Эта функция предоставляется только для совместимости с 16-разрядными версиями Windows. Другие приложения windows должны вызывать функцию WNetAddConnection2 или WNetAddConnection3 .
 

Синтаксис

DWORD WNetAddConnectionA(
  [in] LPCSTR lpRemoteName,
  [in] LPCSTR lpPassword,
  [in] LPCSTR lpLocalName
);

Параметры

[in] lpRemoteName

Указатель на константную строку, завершающуюся значением NULL, которая указывает сетевой ресурс для подключения.

[in] lpPassword

Указатель на константную строку, завершающуюся значением NULL, которая указывает пароль, используемый для подключения. Этот параметр обычно является паролем, связанным с текущим пользователем.

Если этот параметр имеет значение NULL, используется пароль по умолчанию. Если строка пуста, пароль не используется.

Windows Me/98/95: Этот параметр должен иметь значение NULL или пустую строку.

[in] lpLocalName

Указатель на константную строку со значением NULL, указывающую имя перенаправляемого локального устройства, например "F:" или "LPT1". Строка обрабатывается без учета регистра. Если строка имеет значение NULL, подключение к сетевому ресурсу осуществляется без перенаправления локального устройства.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение будет NO_ERROR.

Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки, например одно из следующих значений.

Код возврата Описание
ERROR_ACCESS_DENIED
Вызывающий объект не имеет доступа к сетевому ресурсу.
ERROR_ALREADY_ASSIGNED
Устройство, указанное в параметре lpLocalName , уже подключено.
ERROR_BAD_DEV_TYPE
Тип устройства и тип ресурса не совпадают.
ERROR_BAD_DEVICE
Недопустимое значение, указанное в параметре lpLocalName .
ERROR_BAD_NET_NAME
Значение, указанное в параметре lpRemoteName , является недопустимым или не может быть найдено.
ERROR_BAD_PROFILE
Профиль пользователя имеет неправильный формат.
ERROR_CANNOT_OPEN_PROFILE
Системе не удается открыть профиль пользователя для обработки постоянных подключений.
ERROR_DEVICE_ALREADY_REMEMBERED
Запись для устройства, указанного в параметре lpLocalName , уже находится в профиле пользователя.
ERROR_EXTENDED_ERROR
Произошла ошибка, относявшаяся к сети. Чтобы получить описание ошибки, вызовите функцию WNetGetLastError .
ERROR_INVALID_PASSWORD
Указанный пароль недопустим.
ERROR_NO_NET_OR_BAD_PATH
Невозможно выполнить операцию, так как не запущен сетевой компонент или невозможно использовать указанное имя.
ERROR_NO_NETWORK
Сеть недоступна.

Комментарии

В Windows Server 2003 и Windows XP функции WNet создают и удаляют буквы сетевых дисков в пространстве имен устройств MS-DOS, связанном с сеансом входа, так как устройства MS-DOS идентифицируются с помощью AuthenticationID (a).
локально уникальный идентификатор или LUID, связанный с сеансом входа.) Это может повлиять на приложения, которые вызывают одну из функций WNet для создания буквы сетевого диска при входе одного пользователя, но запрашивают существующие буквы сетевых дисков при входе другого пользователя. Примером такой ситуации может быть создание второго входа пользователя в сеансе входа, например путем вызова функции CreateProcessAsUser , а при втором входе запускается приложение, которое вызывает функцию GetLogicalDrives . Вызов функции GetLogicalDrives не возвращает буквы сетевых дисков, созданные вызовами функции WNet при первом входе в систему. Обратите внимание, что в предыдущем примере первый сеанс входа по-прежнему существует, и этот пример может применяться к любому сеансу входа, включая сеанс служб терминалов. Дополнительные сведения см. в разделе Определение имени устройства MS-DOS.

Если в Windows Server 2003 и Windows XP служба, которая выполняется как LocalSystem, вызывает функцию WNetAddConnection , сопоставленный диск будет виден всем сеансам входа пользователей.

Примечание

Заголовок winnetwk.h определяет WNetAddConnection как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winnetwk.h
Библиотека Mpr.lib
DLL Mpr.dll

См. также раздел

WNetAddConnection2

WNetAddConnection3

WNetCancelConnection

WNetCancelConnection2

WNetGetConnection

Общие сведения о сети Windows (WNet)

Сетевые функции Windows