Função NPAddConnection3 (npapi.h)
A função NPAddConnection3 conecta um dispositivo local a um recurso de rede. Ele executa a mesma operação que NPAddConnection , mas, além disso, permite especificar um identificador para a janela que deve possuir quaisquer caixas de diálogo resultantes e especificar como a conexão deve ser estabelecida.
Sintaxe
DWORD NPAddConnection3(
[in] HWND hwndOwner,
[in] LPNETRESOURCEW lpNetResource,
[in] LPWSTR lpPassword,
[in] LPWSTR lpUserName,
[in] DWORD dwFlags
);
Parâmetros
[in] hwndOwner
Um identificador para uma janela que deve possuir mensagens ou caixas de diálogo. Esse identificador só será válido se CONNECT_INTERACTIVE estiver definido em dwFlags e o identificador só deverá ser usado para produzir caixas de diálogo necessárias para autenticação.
[in] lpNetResource
Ponteiro para uma estrutura NETRESOURCE que especifica o recurso de rede ao qual se conectar. Os campos a seguir devem ser definidos ao fazer uma conexão. Os outros são ignorados.
[in] lpPassword
Ponteiro para a senha a ser usada para fazer a conexão, normalmente a senha associada a lpUserName. O valor NULL pode ser passado para fazer com que a função use a senha padrão. Uma cadeia de caracteres vazia pode ser usada para indicar nenhuma senha. Quando terminar de usar a senha, limpe-a da memória chamando a função SecureZeroMemory . Para obter mais informações sobre como proteger a senha, consulte Manipulando senhas.
[in] lpUserName
Ponteiro para o nome de usuário usado para fazer a conexão. Se FOR NULL, o nome de usuário padrão (o do usuário conectado no momento) será aplicado. Isso é usado quando o usuário deseja se conectar a um recurso, mas tem um nome de usuário ou conta atribuído diferente para esse recurso.
[in] dwFlags
Qualquer combinação dos valores a seguir. O provedor deve ignorar quaisquer outros bits de dwFlags que possam ser definidos.
Valor | Significado |
---|---|
|
A conexão está sendo estabelecida para fins de navegação e provavelmente será liberada rapidamente. |
|
A conexão pode ter interação com o usuário para fins de autenticação. |
|
Não use nenhum padrão para nomes de usuário ou senhas sem oferecer ao usuário a chance de fornecer uma alternativa. Esse sinalizador só será válido se CONNECT_INTERACTIVE também estiver definido. |
|
Não execute nenhuma operação de rede remota para fazer a conexão de rede; Em vez disso, restaure a conexão em um "estado desconectado". Tente a conexão real somente quando algum processo tentar usar a conexão. Se esse bit estiver definido, o chamador deverá fornecer lpLocalName.
Esse recurso é usado para acelerar a restauração de conexões de rede no logon. Um provedor que dá suporte a ele deve retornar o WNNC_CON_DEFERRED bit em NPGetCaps. |
Retornar valor
Se a função for bem-sucedida, ela retornará WN_SUCCESS. Caso contrário, ele retornará um código de erro. Isso pode incluir um dos seguintes.
Código de retorno | Descrição |
---|---|
|
O valor do membro lpRemoteName da estrutura passada para lpNetResource não é válido para esse provedor. |
|
O valor do membro lpLocalName da estrutura passada para lpNetResource não é válido. |
|
A senha especificada não é válida. |
|
O dispositivo especificado no membro lpLocalName da estrutura passada para lpNetResource já está conectado. |
|
A permissão para estabelecer a conexão foi negada. |
|
A rede não está presente. |
|
A tentativa de fazer a conexão foi cancelada pelo usuário usando uma caixa de diálogo exibida pelo provedor. |
Comentários
Se um provedor exibir uma caixa de diálogo de senha porque as credenciais especificadas são insuficientes e o sinalizador CONNECT_INTERACTIVE está definido, o provedor pode não retornar um código de erro negado pelo acesso (um dos ERROR_LOGON_FAILURE, WN_BAD_PASSWORD WN_ACCESS_DENIED). O comportamento sugerido é que o provedor continue solicitando credenciais válidas ao usuário até que o usuário as forneça ou pressione um botão "cancelar". Se NPAddConnection3 for chamado para fazer a conexão solicitada durante a função WNetConnectionDialog ou WNetConnectionDialog1 e um código de acesso negado for retornado, a função WNetConnectionDialog ou WNetConnectionDialog1 exibirá, por si só, uma caixa de diálogo de senha.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | npapi.h |