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

值,表示要擷取的大小資訊類型。 此參數可以是下列其中一個值。

意義
XEKL_KEYSIZE_MIN
最小金鑰大小。
XEKL_KEYSIZE_MAX
金鑰大小上限。
XEKL_KEYSIZE_INC
索引鍵遞增的大小。 如需詳細資訊,請參閱<備註>。

[in] lKeySpec

指定傳回大小資訊的索引鍵。 此參數可以是下列其中一個值。

意義
XEKL_KEYSPEC_KEYX
Exchange 金鑰
XEKL_KEYSPEC_SIG
簽章金鑰

[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