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 |