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
Library Uuid.lib
[DLL] Xenroll.dll