RasGetEapUserIdentity

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
發佈了7 篇原創文章 · 獲贊 1 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章