Función NPAddConnection3 (npapi.h)
La función NPAddConnection3 conecta un dispositivo local a un recurso de red. Realiza la misma operación que NPAddConnection , pero además permite especificar un identificador para la ventana que debe poseer los cuadros de diálogo resultantes y especificar cómo se debe establecer la conexión.
Sintaxis
DWORD NPAddConnection3(
[in] HWND hwndOwner,
[in] LPNETRESOURCEW lpNetResource,
[in] LPWSTR lpPassword,
[in] LPWSTR lpUserName,
[in] DWORD dwFlags
);
Parámetros
[in] hwndOwner
Identificador de una ventana que debe poseer mensajes o cuadros de diálogo. Este identificador solo es válido si CONNECT_INTERACTIVE está establecido en dwFlags y el identificador solo se debe usar para generar cuadros de diálogo necesarios para la autenticación.
[in] lpNetResource
Puntero a una estructura NETRESOURCE que especifica el recurso de red al que se va a conectar. Se deben establecer los siguientes campos al realizar una conexión. Los otros se ignoran.
[in] lpPassword
Puntero a la contraseña que se va a usar para realizar la conexión, normalmente la contraseña asociada a lpUserName. El valor NULL se puede pasar para hacer que la función use la contraseña predeterminada. Se puede usar una cadena vacía para indicar que no hay contraseña. Cuando haya terminado de usar la contraseña, desactive la memoria mediante una llamada a la función SecureZeroMemory . Para obtener más información sobre cómo proteger la contraseña, consulte Control de contraseñas.
[in] lpUserName
Puntero al nombre de usuario usado para establecer la conexión. Si es NULL, se aplica el nombre de usuario predeterminado (el del usuario que ha iniciado sesión). Esto se usa cuando el usuario quiere conectarse a un recurso, pero tiene un nombre de usuario o cuenta asignado diferente para ese recurso.
[in] dwFlags
Cualquier combinación de los valores siguientes. El proveedor debe omitir cualquier otro bit de dwFlags que se pueda establecer.
Valor | Significado |
---|---|
|
La conexión se está estableciendo con fines de exploración y probablemente se liberará rápidamente. |
|
La conexión puede tener interacción con el usuario con fines de autenticación. |
|
No use ningún valor predeterminado para los nombres de usuario o contraseñas sin ofrecer al usuario una oportunidad de proporcionar una alternativa. Esta marca solo es válida si también se establece CONNECT_INTERACTIVE. |
|
No realice ninguna operación de red remota para establecer la conexión de red; en su lugar, restaure la conexión en un "estado desconectado". Intente la conexión real solo cuando algún proceso intente usar la conexión. Si se establece este bit, el autor de la llamada debe proporcionar lpLocalName.
Esta característica se usa para acelerar la restauración de conexiones de red en el inicio de sesión. Un proveedor que lo admita debe devolver el bit WNNC_CON_DEFERRED en NPGetCaps. |
Valor devuelto
Si la función se realiza correctamente, devolverá WN_SUCCESS. De lo contrario, devolverá un código de error. Esto puede incluir una de las siguientes opciones.
Código devuelto | Descripción |
---|---|
|
El valor del miembro lpRemoteName de la estructura que se pasa a lpNetResource no es válido para este proveedor. |
|
El valor del miembro lpLocalName de la estructura que se pasa a lpNetResource no es válido. |
|
La contraseña especificada no es válida. |
|
El dispositivo especificado en el miembro lpLocalName de la estructura que se pasa a lpNetResource ya está conectado. |
|
Se deniega el permiso para establecer la conexión. |
|
La red no está presente. |
|
El usuario canceló el intento de realizar la conexión mediante un cuadro de diálogo que muestra el proveedor. |
Comentarios
Si un proveedor muestra un cuadro de diálogo de contraseña porque las credenciales especificadas no son suficientes y se establece la marca CONNECT_INTERACTIVE, es posible que el proveedor no devuelva un código de error de acceso denegado (uno de ERROR_LOGON_FAILURE, WN_BAD_PASSWORD, WN_ACCESS_DENIED). El comportamiento sugerido es para que el proveedor siga pidiendo al usuario credenciales válidas hasta que el usuario los suministre o presione un botón "cancelar". Si se llama a NPAddConnection3 para realizar la conexión solicitada durante la función WNetConnectionDialog o WNetConnectionDialog1 y se devuelve un código de acceso denegado, la función WNetConnectionDialog o WNetConnectionDialog1 mostrará, en sí mismo, un cuadro de diálogo de contraseña.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | npapi.h |