Compartilhar via


Função RasGetEapUserIdentityA (ras.h)

A função RasGetEapUserIdentity recupera informações de identidade para o usuário atual. Use essas informações para chamar o RasDial com uma entrada de catálogo telefônico que requer o Protocolo de Autenticação Extensível (EAP).

Sintaxe

DWORD RasGetEapUserIdentityA(
  [in]  LPCSTR                pszPhonebook,
  [in]  LPCSTR                pszEntry,
  [in]  DWORD                 dwFlags,
  [in]  HWND                  hwnd,
  [out] LPRASEAPUSERIDENTITYA *ppRasEapUserIdentity
);

Parâmetros

[in] pszPhonebook

Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o caminho completo do arquivo de catálogo telefônico (PBK). Se esse parâmetro for NULL, a função usará a lista telefônica do sistema.

[in] pszEntry

Ponteiro para uma cadeia de caracteres terminada em nulo que especifica um nome de entrada existente.

[in] dwFlags

Especifica zero ou mais dos sinalizadores a seguir que qualificam o processo de autenticação.

Sinalizador Significado
RASEAPF_NonInteractive
Especifica que o protocolo de autenticação não deve exibir uma interface gráfica do usuário. Se esse sinalizador não estiver presente, não há problema para o protocolo exibir uma interface do usuário.
RASEAPF_Logon
Especifica que os dados do usuário são obtidos do WinLogon.
RASEAPF_Preview
Especifica que o usuário deve ser solicitado a fornecer informações de identidade antes de discar.

[in] hwnd

Manipule para a janela pai da caixa de diálogo da interface do usuário. Se o parâmetro fInvokeUI for FALSE, hwnd deverá ser NULL.

[out] ppRasEapUserIdentity

Ponteiro para um ponteiro que, no retorno bem-sucedido, recebe o endereço da estrutura RASEAPUSERIDENTITY que contém informações de identidade do usuário EAP. RasGetEapUserIdentity aloca o buffer de memória para a estrutura RASEAPUSERIDENTITY . Libere essa memória chamando RasFreeEapUserIdentity.

Retornar valor

Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.

Se a função falhar, o valor retornado será um dos seguintes códigos de erro ou um valor de Códigos de Erro de Roteamento e Acesso Remoto ou Winerror.h.

Valor Significado
E_INVALID_ARG
O parâmetro pcbEapUserIdentity é NULL.
ERROR_INTERACTIVE_MODE
A função foi chamada com o sinalizador RASEAPF_NonInteractive. No entanto, o protocolo de autenticação deve exibir uma interface do usuário para obter as informações de identidade necessárias do usuário.
ERROR_INVALID_FUNCTION_FOR_ENTRY
O método de autenticação para essa entrada de catálogo telefônico não é EAP ou o método de autenticação é EAP, mas o protocolo usa a caixa de diálogo de credenciais padrão Windows NT/Windows 2000 para obter informações de identidade do usuário. Em ambos os casos, o chamador não precisa passar informações de identidade de EAP para RasDial.
ERROR_RASMAN_CANNOT_INITIALIZE
O Serviço de Acesso Remoto não foi inicializado corretamente.
Outros
Use FormatMessage para recuperar a mensagem de erro do sistema que corresponde ao código de erro retornado.

Comentários

RasGetEapUserIdentity chama a função RAS RasGetEapUserData e a função EAP RasEapGetIdentity. RasEapGetIdentity é implementado pelo protocolo de autenticação.

Se a função for bem-sucedida, ou seja, o valor retornado será NO_ERROR, o chamador deverá copiar as informações de identidade do EAP da estrutura RASEAPUSERIDENTITY apontada pelo parâmetro ppRasEapUserIdentity para as estruturas RASDIALPARAMS e RASDIALEXTENSIONS usadas na chamada para RasDial.

Se o aplicativo de acesso remoto que está sendo desenvolvido tiver uma interface gráfica do usuário, o chamador de RasGetEapUserIdentity não deverá especificar o sinalizador RASEAPF_NonInteractive. Se o aplicativo tiver uma interface do usuário de linha de comando, talvez o chamador queira especificar o sinalizador RASEAPF_NonInteractive para impedir que o protocolo de autenticação exiba uma interface gráfica do usuário.

Observação

O cabeçalho ras.h define RasGetEapUserIdentity como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho ras.h
Biblioteca Rasapi32.lib
DLL Rasapi32.dll

Confira também

RASEAPUSERIDENTITY

Rasdial

Raseapgetidentity

RasFreeEapUserIdentity

RasGetEapUserData

RasSetEapUserData