DWORD RasGetEapUserIdentity(
_In_ LPCSTR pszPhonebook,
_In_ LPCSTR pszEntry,
_In_ DWORD dwFlags,
_In_ HWND hwnd,
_Out_ LPRASEAPUSERIDENTITY *ppRasEapUserIdentity
);
说明
获取与指定电话簿条目关联的用户EAP验证信息。函数RasDial使用一个需要EAP验证信息的电话簿进行拨号时需要使用此信息。
参数
pszPhonebook [in]
指向包含完整路径的电话簿文件(PBK)。该参数为空时使用系统电话簿。
pszEntry [in]
指定一个已存在的电话簿条目。
dwFlags [in]
为0或下列表格中的标志组合。用于限定验证过程。
标志 | 含义 |
---|---|
RASEAPF_NonInteractive | 验证过程中不会显示任何用户窗口。 |
RASEAPF_Logon | 指示用户数据已包含在WinLogon中。 |
RASEAPF_Preview | 拨号前提提示用户确认。 |
hwnd [in]
父窗口句柄。如果fInvokeUI(???)参数为空则该参数应设置为NULL。
ppRasEapUserIdentity [out]
函数成功返回时,该参数接收一个指向RASEAPUSERIDENTITY结构的指针。该结构内存由函数自动分配。需要调用RasFreeEapUserIdentity函数释放内存。
返回值
成功时返回ERROR_SUCCESS。
失败时返回以下列表中的值之一或来自Routing and Remote Access Error Codes或Winerror.h中定义的错误码。
值 | 含义 |
---|---|
E_INVALID_ARG | ppRasEapUserIdentity参数为NULL。 |
ERROR_INTERACTIVE_MODE | 设置了RASEAPF_NonInteractive标记调用此函数,但验证协议需要显示一个UI窗口以便从用户获取需要的身份识别信息。 |
ERROR_INVALID_FUNCTION_FOR_ENTRY | 要么与电话簿条目关联的验证方法不是EAP,要么是EAP,但协议要求使用标准的Windows NT/Windows 2000证书进行验证。无论如何,不需要传递EAP身份信息。 |
ERROR_RASMAN_CANNOT_INITIALIZE | 远程访问服务不能正常初始化。 |
Other | 使用FormatMessage函数获取系统错误描述。 |
注意事项
该函数会调用RasGetEapUserData和RasEapGetIdentity函数,并且应用于验证协议中。
成功时返回NO_ERROR。调用者应将RASEAPUSERIDENTITY结构中的RASDIALPARAMS和RASDIALEXTENSIONS结构数据复制出来用于调用RasDial函数。
如果远程拨号程序有图形界面,则调用时不应指定RASEAPF_NonInteractive标记,如果拨号程序是控制台命令,则应指定此标记以防止显示图形界面。
系统支持
客户端最小支持 | Windows 2000专业版 |
---|---|
服务端最小支持 | Windows 2000 Server |
Header | Ras.h |
Library | Rasapi32.lib |
DLL | Rasapi32.dll |
Unicode和ANSI名称 | RasGetEapUserIdentityW 和 RasGetEapUserIdentityA |