NCryptEnumAlgorithms 函式 (ncrypt.h)
NCryptEnumAlgorithms 函式會取得指定密鑰儲存提供者所支援的演算法名稱。
語法
SECURITY_STATUS NCryptEnumAlgorithms(
[in] NCRYPT_PROV_HANDLE hProvider,
[in] DWORD dwAlgOperations,
[out] DWORD *pdwAlgCount,
[out] NCryptAlgorithmName **ppAlgList,
[in] DWORD dwFlags
);
參數
[in] hProvider
要列舉演算法的金鑰儲存提供者句柄。 此句柄是使用 NCryptOpenStorageProvider 函式取得。
[in] dwAlgOperations
一組值,決定要列舉的演算法類別。 這可以是零或下列一或多個值的組合。 如果 dwAlgOperations 為零,則會列舉所有演算法。
[out] pdwAlgCount
接收 ppAlgList 陣列中項目數目的 DWORD 位址。
[out] ppAlgList
接收已註冊演算法名稱陣列的 NCryptAlgorithmName 結構指標位址。 pdwAlgCount 參數所指向的變數會接收這個陣列中的元素數目。
不再需要此記憶體時,必須將這個指標傳遞至 NCryptFreeBuffer 函式,以釋放它。
[in] dwFlags
修改函式行為的旗標。 這可以是零 (0) 或下列值。
值 | 意義 |
---|---|
|
要求金鑰服務提供者 (KSP) 不會顯示任何使用者介面。 如果提供者必須顯示要運作的UI,呼叫會失敗,而 KSP 應該將NTE_SILENT_CONTEXT錯誤碼設定為最後 一個 錯誤。 |
傳回值
傳回狀態代碼,指出函式的成功或失敗。
可能的傳回碼包括但不限於下列各項。
傳回碼 | Description |
---|---|
|
函式成功。 |
|
dwFlags 參數包含無效的值。 |
|
hProvider 參數無效。 |
|
一或多個參數無效。 |
|
發生記憶體配置失敗。 |
備註
服務不得從它的 StartService 函式呼叫此函式。 如果服務從它的 StartService 函式呼叫此函式,可能會發生死結,而且服務可能會停止回應。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | ncrypt.h |
程式庫 | Ncrypt.lib |
Dll | Ncrypt.dll |