Функция NPAddConnection3 (npapi.h)
Функция NPAddConnection3 подключает локальное устройство к сетевому ресурсу. Он выполняет ту же операцию, что и NPAddConnection , но в дополнение позволяет указать дескриптор для окна, которому должны принадлежать все результированные диалоговые окна, и указать способ установки соединения.
Синтаксис
DWORD NPAddConnection3(
[in] HWND hwndOwner,
[in] LPNETRESOURCEW lpNetResource,
[in] LPWSTR lpPassword,
[in] LPWSTR lpUserName,
[in] DWORD dwFlags
);
Параметры
[in] hwndOwner
Дескриптор для окна, которому должны принадлежать все сообщения или диалоговые окна. Этот дескриптор действителен, только если CONNECT_INTERACTIVE задано в dwFlags, а дескриптор следует использовать только для создания диалоговых окон, необходимых для проверки подлинности.
[in] lpNetResource
Указатель на структуру NETRESOURCE , которая указывает сетевой ресурс для подключения. При подключении необходимо задать следующие поля. Остальные атрибуты не учитываются.
[in] lpPassword
Указатель на пароль, используемый при подключении, обычно это пароль, связанный с lpUserName. Значение NULL может быть передано, чтобы функция могла использовать пароль по умолчанию. Для указания отсутствия пароля можно использовать пустую строку. Завершив использование пароля, очистите его из памяти, вызвав функцию SecureZeroMemory . Дополнительные сведения о защите пароля см. в разделе Обработка паролей.
[in] lpUserName
Указатель на имя пользователя, используемое для соединения. Если значение РАВНО NULL, применяется имя пользователя по умолчанию (имя текущего пользователя, выполнившего вход). Используется, когда пользователь хочет подключиться к ресурсу, но имеет другое назначенное имя пользователя или учетную запись для этого ресурса.
[in] dwFlags
Любое сочетание следующих значений. Поставщик должен игнорировать любые другие биты dwFlags , которые могут быть заданы.
Значение | Значение |
---|---|
|
Подключение устанавливается для просмотра веб-страниц и, вероятно, будет быстро освобождено. |
|
Подключение может взаимодействовать с пользователем в целях проверки подлинности. |
|
Не используйте значения по умолчанию для имен пользователей или паролей, не предлагая пользователю возможность предоставить альтернативу. Этот флаг действителен, только если также задан CONNECT_INTERACTIVE. |
|
Не выполнять удаленные сетевые операции для подключения к сети; Вместо этого восстановите подключение в "отключенном состоянии". Попытайтесь установить фактическое подключение только в том случае, если какой-то процесс пытается использовать подключение. Если этот бит задан, вызывающий объект должен указать lpLocalName.
Эта функция используется для ускорения восстановления сетевых подключений при входе в систему. Поставщик, поддерживающий его, должен возвращать бит WNNC_CON_DEFERRED в NPGetCaps. |
Возвращаемое значение
Если функция будет выполнена успешно, она вернет WN_SUCCESS. В противном случае возвращается код ошибки. Это может быть одно из следующих действий.
Код возврата | Описание |
---|---|
|
Значение элемента lpRemoteName структуры, передаваемой в lpNetResource , недопустимо для этого поставщика. |
|
Недопустимое значение элемента lpLocalName структуры, передаваемой в lpNetResource . |
|
Указанный пароль недопустим. |
|
Устройство, указанное в элементе lpLocalName структуры, переданной в lpNetResource , уже подключено. |
|
Разрешение на установку подключения отказано. |
|
Сеть отсутствует. |
|
Попытка установить подключение была отменена пользователем с помощью диалогового окна, отображаемого поставщиком. |
Комментарии
Если поставщик отображает диалоговое окно с паролем, так как указанных учетных данных недостаточно и установлен флаг CONNECT_INTERACTIVE, поставщик может не вернуть код ошибки отказа в доступе (один из ERROR_LOGON_FAILURE, WN_BAD_PASSWORD WN_ACCESS_DENIED). Предлагаемое поведение заключается в том, чтобы поставщик продолжал запрашивать у пользователя действительные учетные данные, пока пользователь не предоставит их или не нажмет кнопку "Отмена". Если вызывается NPAddConnection3 , чтобы установить подключение, запрошенное во время выполнения функции WNetConnectionDialog или WNetConnectionDialog1 , и возвращается код, запрещенный в доступе, функция WNetConnectionDialog или WNetConnectionDialog1 сама отобразит диалоговое окно пароля.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | npapi.h |