Partager via


RasGetEapUserIdentityA, fonction (ras.h)

La fonction RasGetEapUserIdentity récupère les informations d’identité de l’utilisateur actuel. Utilisez ces informations pour appeler RasDial avec une entrée de carnet de téléphone qui nécessite le protocole EAP (Extensible Authentication Protocol).

Syntaxe

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

Paramètres

[in] pszPhonebook

Pointeur vers une chaîne terminée par null qui spécifie le chemin d’accès complet du fichier d’annuaire téléphonique (PBK). Si ce paramètre a la valeur NULL, la fonction utilise l’annuaire téléphonique système.

[in] pszEntry

Pointeur vers une chaîne terminée par null qui spécifie un nom d’entrée existant.

[in] dwFlags

Spécifie zéro ou plusieurs des indicateurs suivants qui qualifient le processus d’authentification.

Indicateur Signification
RASEAPF_NonInteractive
Spécifie que le protocole d’authentification ne doit pas afficher d’interface utilisateur graphique. Si cet indicateur n’est pas présent, le protocole peut afficher une interface utilisateur.
RASEAPF_Logon
Spécifie que les données utilisateur sont obtenues à partir de WinLogon.
RASEAPF_Preview
Spécifie que l’utilisateur doit être invité à entrer des informations d’identité avant de composer.

[in] hwnd

Gérez la fenêtre parente de la boîte de dialogue d’interface utilisateur. Si le paramètre fInvokeUI a la valeur FALSE, hwnd doit avoir la valeur NULL.

[out] ppRasEapUserIdentity

Pointeur vers un pointeur qui, en cas de retour réussi, reçoit l’adresse de la structure RASEAPUSERIDENTITY qui contient des informations d’identité utilisateur EAP. RasGetEapUserIdentity alloue la mémoire tampon pour la structure RASEAPUSERIDENTITY . Libérez cette mémoire en appelant RasFreeEapUserIdentity.

Valeur retournée

Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants ou une valeur provenant des codes d’erreur de routage et d’accès à distance ou winerror.h.

Valeur Signification
E_INVALID_ARG
Le paramètre pcbEapUserIdentity est NULL.
ERROR_INTERACTIVE_MODE
La fonction a été appelée avec l’indicateur RASEAPF_NonInteractive. Toutefois, le protocole d’authentification doit afficher une interface utilisateur afin d’obtenir les informations d’identité requises de l’utilisateur.
ERROR_INVALID_FUNCTION_FOR_ENTRY
Soit la méthode d’authentification pour cette entrée de carnet de téléphone n’est pas EAP, soit la méthode d’authentification est EAP, mais le protocole utilise la boîte de dialogue d’informations d’identification Windows NT/Windows 2000 standard pour obtenir les informations d’identité de l’utilisateur. Dans les deux cas, l’appelant n’a pas besoin de transmettre les informations d’identité EAP à RasDial.
ERROR_RASMAN_CANNOT_INITIALIZE
Le service d’accès à distance n’a pas pu s’initialiser correctement.
Autres
Utilisez FormatMessage pour récupérer le message d’erreur système qui correspond au code d’erreur retourné.

Remarques

RasGetEapUserIdentity appelle la fonction RASGetEapUserData et la fonction EAP RasEapGetIdentity. RasEapGetIdentity est implémenté par le protocole d’authentification.

Si la fonction réussit, c’est-à-dire que la valeur de retour est NO_ERROR, l’appelant doit copier les informations d’identité EAP de la structure RASEAPUSERIDENTITY pointée par le paramètre ppRasEapUserIdentity vers les structures RASDIALPARAMS et RASDIALEXTENSIONS utilisées dans l’appel à RasDial.

Si l’application d’accès à distance en cours de développement a une interface utilisateur graphique, l’appelant de RasGetEapUserIdentity ne doit pas spécifier l’indicateur RASEAPF_NonInteractive. Si l’application dispose d’une interface utilisateur de ligne de commande, l’appelant peut spécifier l’indicateur RASEAPF_NonInteractive pour empêcher le protocole d’authentification d’afficher une interface utilisateur graphique.

Notes

L’en-tête ras.h définit RasGetEapUserIdentity comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête ras.h
Bibliothèque Rasapi32.lib
DLL Rasapi32.dll

Voir aussi

RASEAPUSERIDENTITY

RasDial

RasEapGetIdentity

RasFreeEapUserIdentity

RasGetEapUserData

RasSetEapUserData