共用方式為


RasGetEapUserIdentityA 函式 (ras.h)

RasGetEapUserIdentity 函式會擷取目前使用者的身分識別資訊。 使用這項資訊,透過需要可延伸驗證通訊協定 (EAP) 的電話簿專案來呼叫 RasDial

語法

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

參數

[in] pszPhonebook

null終止字串的指標,指定電話簿 (PBK) 檔案的完整路徑。 如果此參數 NULL,則函式會使用系統電話簿。

[in] pszEntry

指定現有項目名稱之 null終止字串的指標。

[in] dwFlags

指定下列旗標的零個或多個符合驗證程式的旗標。

意義
RASEAPF_NonInteractive
指定驗證通訊協定不應該顯示圖形用戶介面。 如果此旗標不存在,則通訊協定可以顯示使用者介面。
RASEAPF_Logon
指定從 WinLogon 取得用戶數據。
RASEAPF_Preview
指定在撥號之前,應提示使用者輸入身分識別資訊。

[in] hwnd

UI 對話框的父視窗句柄。 如果 fInvokeUI 參數 FALSE,則 hwndNULL

[out] ppRasEapUserIdentity

成功傳回的指標會接收包含EAP使用者身分識別資訊的 RASEAPUSERIDENTITY 結構位址。 RasGetEapUserIdentity 配置 RASEAPUSERIDENTITY 結構的記憶體緩衝區。 呼叫 RasFreeEapUserIdentity來釋放此記憶體。

傳回值

如果函式成功,則傳回值會 ERROR_SUCCESS

如果函式失敗,傳回值是下列其中一個錯誤碼,或來自 路由和遠端訪問錯誤碼的值 或 Winerror.h。

價值 意義
E_INVALID_ARG
參數 NULL
ERROR_INTERACTIVE_MODE
使用 RASEAPF_NonInteractive 旗標呼叫函式。 不過,驗證通訊協議必須顯示UI,才能從使用者取得必要的身分識別資訊。
ERROR_INVALID_FUNCTION_FOR_ENTRY
此電話簿項目的驗證方法不是 EAP,或驗證方法是 EAP,但通訊協定會使用標準 Windows NT/Windows 2000 認證對話框來取得使用者身分識別資訊。 不論是哪一種情況,呼叫者都不需要將 EAP 身分識別資訊傳遞至 RasDial
ERROR_RASMAN_CANNOT_INITIALIZE
遠端存取服務無法正確初始化。
其他
使用 FormatMessage 擷取對應至傳回錯誤碼的系統錯誤訊息。

言論

RasGetEapUserIdentity 會呼叫 RAS 函式,RasGetEapUserData 和 EAP 函式 RasEapGetIdentity驗證通訊協議會實作 RasEapGetIdentity

如果函式成功,即傳回值NO_ERROR, 呼叫端應該從 ppRasEapUserIdentity 參數所指向的 RASEAPUSERIDENTITY 結構,將 EAP 身分識別資訊複製到 RASDIALPARAMSRASDIALEXTENSIONS 結構,用於呼叫 RasDial

如果開發的遠端存取應用程式具有圖形使用者介面,則 RasGetEapUserIdentity 的呼叫者不應指定RASEAPF_NonInteractive旗標。 如果應用程式具有命令行使用者介面,呼叫端可能會想要指定RASEAPF_NonInteractive旗標,以防止驗證通訊協議顯示圖形用戶介面。

注意

ras.h 標頭會根據 UNICODE 預處理器常數的定義,將 RasGetEapUserIdentity 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 ras.h
連結庫 Rasapi32.lib
DLL Rasapi32.dll

另請參閱

RASEAPUSERIDENTITY

RasDial

RasEapGetIdentity

RasFreeEapUserIdentity

RasGetEapUserData

RasSetEapUserData