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 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 um cadeia de caracteresterminada nula que especifica o caminho completo do arquivo PBK (phone-book). Se esse parâmetro for NULL, a função usará a lista telefônica do sistema.

[in] pszEntry

Ponteiro para um cadeia de caracteresterminada nula que especifica um nome de entrada existente.

[in] dwFlags

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

Bandeira Significado
RASEAPF_NonInteractive
Especifica que o protocolo de autenticação não deve trazer 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 de RASEAPUSERIDENTITY que contém informações de identidade do usuário EAP. RasGetEapUserIdentity aloca o buffer de memória para a estrutura de RASEAPUSERIDENTITY . Libere essa memória chamando RasFreeEapUserIdentity.

Valor de retorno

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 lista telefônica não é EAP ou o método de autenticação é EAP, mas o protocolo usa a caixa de diálogo de credenciais padrão do 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 do 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.

Observações

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 é NO_ERROR, o chamador deve copiar as informações de identidade do EAP da estrutura de RASEAPUSERIDENTITY apontada pelo parâmetro ppRasEapUserIdentity para o RASDIALPARAMS e estruturas de 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.

Nota

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. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho ras.h
biblioteca Rasapi32.lib
de DLL Rasapi32.dll

Consulte também

RASEAPUSERIDENTITY

RasDial

RasEapGetIdentity

RasFreeEapUserIdentity

rasGetEapUserData

rasSetEapUserData