ICspStatus::get_Ordinal 方法 (certenroll.h)
Ordinal 屬性會指定或擷取 ICspStatus 物件在 ICspStatuses 集合中的位置。
這是可讀寫的屬性。
語法
HRESULT get_Ordinal(
LONG *pValue
);
參數
pValue
傳回值
無
備註
若要逐一查看序數的 ICspStatuses 集合,請呼叫 ItemByOrdinal 屬性。 集合中 ICspStatus 物件的序數順序在每次列舉集合時可能會有所不同,原因如下:
- 證書要求範本設定
- 密碼編譯提供者的屬性值
- 私鑰屬性值
例如,假設選擇建立憑證要求的第 2 版範本指定憑證只能用於簽署, (pKIDefaultKeySpec 範本屬性是XCN_AT_SIGNATURE) ,而且預設提供者是 Microsoft Enhanced RSA 和 AES 密碼編譯提供者。 請注意,範本會限制憑證簽署,即使提供者同時支援加密和簽署演算法也一樣。 也就是說,提供者上的 KeySpec 屬性是XCN_AT_KEYEXCHANGE和XCN_AT_SIGNATURE常數的位元組合,但 pKIDefaultKeySpec 樣本屬性僅支援XCN_AT_SIGNATURE。
集合中的 ICspStatus 物件會以下列方式排序:
- 在此提供者列舉的 ICspStatus 物件中,與簽章演算法相關聯的物件 (XCN_AT_SIGNATURE) 會先排序 (較低的序數值) ,並啟用其 Display 和 Selected 屬性。 注意 如果 pKIDefaultKeySpec 樣本屬性已XCN_AT_KEYEXCHANGE,則會先排序加密演算法。
- 在此提供者所列舉的 ICspStatus 物件中,與加密演算法相關聯的物件 (XCN_AT_KEYEXCHANGE) 稍後會排序 (較高的序數值) ,而且其 Display 和 Selected 屬性並未啟用。
- 對於支援非對稱簽署演算法的所有其他已安裝 CryptoAPI 提供者, (XCN_AT_SIGNATURE) 但未與指定的提供者相關聯, 則會啟用 Display 屬性,而且未啟用 Selected 屬性。
- 對於支援非對稱加密演算法的所有其他已安裝 CryptoAPI 提供者 (XCN_AT_KEYEXCHANGE) ,則不會啟用 [顯示 ] 和 [ 選取 ] 屬性。
- 針對所有已安裝的密碼編譯 API:新一代 (CNG) 提供者,則不會啟用 [顯示 ] 和 [ 選取 ] 屬性。
如需另一個範例,假設第 3 版範本指定一個特定的 CNG 提供者和演算法。 該提供者/演算法組 (ICspStatus 物件) 會先排序,並啟用顯示和選取。 該提供者所支援的其他所有演算法稍後會排序、未啟用顯示,也不會選取。 支援指定演算法的其他所有提供者稍後仍會排序,並啟用顯示,但未選取。 所有剩餘的提供者/演算法組都不會啟用顯示且未選取。
注意 CNG 提供者不支援 KeySpec 預定的使用概念。 它們會針對這個屬性值傳回XCN_AT_NONE。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |
Dll | CertEnroll.dll |