ICEnroll4::GetKeyLenEx 方法 (xenroll.h)
[此方法已不再可供 Windows Server 2008 和 Windows Vista 使用。]
GetKeyLenEx 方法會擷取簽章和交換密鑰的大小資訊。 這個方法最初是在 ICEnroll4 介面中定義。
此方法擷取的值取決於目前的 密碼編譯服務提供者 (CSP) 。
語法
HRESULT GetKeyLenEx(
[in] LONG lSizeSpec,
[in] LONG lKeySpec,
[out] LONG *pdwKeySize
);
參數
[in] lSizeSpec
值,表示要擷取的大小資訊類型。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
最小金鑰大小。 |
|
金鑰大小上限。 |
|
索引鍵遞增的大小。 如需詳細資訊,請參閱<備註>。 |
[in] lKeySpec
指定傳回大小資訊的索引鍵。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
Exchange 金鑰 |
|
簽章金鑰 |
[out] pdwKeySize
以位為單位接收索引鍵大小的變數指標。
傳回值
C++
如果方法成功,方法會傳回S_OK。如果方法失敗,它會傳回 HRESULT 值,指出錯誤。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
VB
值,表示索引鍵大小,以位為單位。備註
如果 CSP 不支援此方法,則會傳回錯誤。
如需XEKL_KEYSIZE_INC值的詳細資訊,請參閱 CryptGetProvParam 參考頁面中的PP_SIG_KEYSIZE_INC使用量。
範例
DWORD dwExchMin, dwExchMax, dwSignDef, dwSignInc;
// Determine the minimum and maximum key length values.
// hr is HRESULT variable.
hr = pEnroll4->GetKeyLenEx( XEKL_KEYSIZE_MIN,
XEKL_KEYSPEC_KEYX,
&dwExchMin );
if ( FAILED( hr ) )
printf("Failed GetKeyLenEx for Exchange Minimum [%x]\n", hr);
else
printf("Exchange key Min: %d\n", dwExchMin);
hr = pEnroll4->GetKeyLenEx( XEKL_KEYSIZE_MAX,
XEKL_KEYSPEC_KEYX,
&dwExchMax );
if ( FAILED( hr ) )
printf("Failed GetKeyLenEx for Exchange Maximum [%x]\n", hr);
else
printf("Exchange key Max: %d\n", dwExchMax );
hr = pEnroll4->GetKeyLenEx( XEKL_KEYSIZE_DEFAULT,
XEKL_KEYSPEC_SIG,
&dwSignDef );
if ( FAILED( hr ) )
printf("Failed GetKeyLenEx for Signature Default "
"Key size [%x]\n", hr);
else
printf("Signature key default size: %d\n", dwSignDef );
hr = pEnroll4->GetKeyLenEx( XEKL_KEYSIZE_INC,
XEKL_KEYSPEC_SIG,
&dwSignInc );
if ( FAILED( hr ) )
printf("Failed GetKeyLenEx for Signature "
"Key Size Increment [%x]\n", hr);
else
printf("Signature key increment size: %d\n", dwSignInc );
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | xenroll.h |
程式庫 | Uuid.lib |
Dll | Xenroll.dll |