Метод ICEnroll3::GetKeyLen (xenroll.h)
[Этот метод больше недоступен для использования в Windows Server 2008 и Windows Vista.]
Метод GetKeyLen извлекает минимальную и максимальную длину ключей для подписи и ключей обмена. Этот метод был впервые определен в интерфейсе ICEnroll3 . Значения, полученные этим методом, зависят от текущего поставщика служб шифрования.
Синтаксис
HRESULT GetKeyLen(
[in] BOOL fMin,
[in] BOOL fExchange,
[out] LONG *pdwKeySize
);
Параметры
[in] fMin
Логическое значение, указывающее, какая длина ключа (минимальная или максимальная) извлекается. Если fMin имеет значение TRUE, извлекается минимальная длина ключа; Если значение равно FALSE, извлекается максимальная длина ключа.
[in] fExchange
Логическое значение, указывающее тип ключа. Если fExchange имеет значение TRUE, извлекается длина ключа обмена; Если значение равно FALSE, извлекается длина ключа подписи.
[out] pdwKeySize
Указатель, получающий минимальную или максимальную длину ключа в битах.
Возвращаемое значение
C++
Если метод выполнен успешно, метод возвращает S_OK, а *pdwKeySize будет значением, представляющим длину (в битах) минимальной или максимальной длины ключа.Если метод завершается сбоем, он возвращает значение HRESULT , указывающее на ошибку. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.
VB
Значение типа , представляющее длину (в битах) для минимальной или максимальной длины ключа.Комментарии
Вызовите этот метод, чтобы определить минимальную и максимальную длину ключа. Если поставщик служб CSP не поддерживает этот метод, возвращается ошибка.
Примеры
DWORD dwExchMin, dwExchMax, dwSignMin, dwSignMax;
// Determine the minimum and maximum key length values.
// hr is HRESULT variable.
hr = pEnroll->GetKeyLen( TRUE, TRUE, &dwExchMin );
if ( FAILED( hr ) )
printf("Failed GetKeyLen for Exchange Minimum [%x]\n", hr);
else
printf("Exchange key Min: %d\n", dwExchMin);
hr = pEnroll->GetKeyLen( FALSE, TRUE, &dwExchMax );
if ( FAILED( hr ) )
printf("Failed GetKeyLen for Exchange Maximum [%x]\n", hr);
else
printf("Exchange key Max: %d\n", dwExchMax );
hr = pEnroll->GetKeyLen( TRUE, FALSE, &dwSignMin );
if ( FAILED( hr ) )
printf("Failed GetKeyLen for Signature Minimum [%x]\n", hr);
else
printf("Signature key Min: %d\n", dwSignMin );
hr = pEnroll->GetKeyLen( FALSE, FALSE, &dwSignMax );
if ( FAILED( hr ) )
printf("Failed GetKeyLen for Signature Maximum [%x]\n", hr);
else
printf("Signature key Max: %d\n", dwSignMax );
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | xenroll.h |
Библиотека | Uuid.lib |
DLL | Xenroll.dll |