Поделиться через


структура CRYPTUI_VIEWCERTIFICATE_STRUCTA (cryptuiapi.h)

Структура CRYPTUI_VIEWCERTIFICATE_STRUCT содержит сведения о сертификате для просмотра. Эта структура используется в функции CryptUIDlgViewCertificate .

Синтаксис

typedef struct tagCRYPTUI_VIEWCERTIFICATE_STRUCTA {
  DWORD             dwSize;
  HWND              hwndParent;
  DWORD             dwFlags;
  LPCSTR            szTitle;
  PCCERT_CONTEXT    pCertContext;
  LPCSTR            *rgszPurposes;
  DWORD             cPurposes;
  union {
    CRYPT_PROVIDER_DATA const *pCryptProviderData;
    HANDLE                    hWVTStateData;
  };
  BOOL              fpCryptProviderDataTrustedUsage;
  DWORD             idxSigner;
  DWORD             idxCert;
  BOOL              fCounterSigner;
  DWORD             idxCounterSigner;
  DWORD             cStores;
  HCERTSTORE        *rghStores;
  DWORD             cPropSheetPages;
  LPCPROPSHEETPAGEA rgPropSheetPages;
  DWORD             nStartPage;
} CRYPTUI_VIEWCERTIFICATE_STRUCTA, *PCRYPTUI_VIEWCERTIFICATE_STRUCTA;

Члены

dwSize

Размер структуры CRYPTUI_VIEWCERTIFICATE_STRUCT в байтах.

hwndParent

Дескриптор окна, который является родительским для диалогового окна, созданного CryptUIDlgViewCertificate.

dwFlags

Этот элемент может быть одним или несколькими из следующих значений.

Значение Значение
CRYPTUI_HIDE_HIERARCHYPAGE
Страница Путь сертификации отключена.
CRYPTUI_HIDE_DETAILPAGE
Страница "Сведения " отключена.
CRYPTUI_DISABLE_EDITPROPERTIES
Пользователь не может изменять свойства.
CRYPTUI_ENABLE_EDITPROPERTIES
Пользователю разрешено изменять свойства.
CRYPTUI_DISABLE_ADDTOSTORE
Кнопка Установить отключена.
CRYPTUI_ENABLE_ADDTOSTORE
Кнопка Установить включена.
CRYPTUI_ACCEPT_DECLINE_STYLE
Страницы или кнопки, позволяющие пользователю принимать или отклонять любое решение, отключаются.
CRYPTUI_IGNORE_UNTRUSTED_ROOT
Недоверенная корневая ошибка игнорируется.
CRYPTUI_DONT_OPEN_STORES
Известные доверенные хранилища не будут использоваться для построения цепочки.
CRYPTUI_ONLY_OPEN_ROOT_STORE
Известное доверенное корневое хранилище не будет использоваться для построения цепочки.
CRYPTUI_WARN_UNTRUSTED_ROOT
Используйте только при просмотре сертификатов на удаленных компьютерах. Если этот флаг используется, первым элементом rghStores должен быть дескриптор корневого хранилища на удаленном компьютере.
CRYPTUI_ENABLE_REVOCATION_CHECKING
Включите проверку отзыва с поведением по умолчанию. Поведение по умолчанию — включить проверку отзыва всей цепочки сертификатов, за исключением корневого сертификата. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData .
CRYPTUI_WARN_REMOTE_TRUST
При создании цепочки сертификатов для удаленного компьютера предупредите, что цепочка может не быть доверенной на удаленном компьютере.
CRYPTUI_DISABLE_EXPORT
Если этот флаг установлен, кнопка Копировать в файл будет отключена на странице Сведения .
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
Включите проверку отзыва только для конечного сертификата в цепочке сертификатов. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData .
CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN
Включите проверку отзыва для каждого сертификата в цепочке сертификатов. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData .

Примечание Так как корневые сертификаты редко содержат сведения, позволяющие проверять отзыв, ожидается, что использование этого параметра обычно приводит к сбою функции CryptUIDlgViewCertificate . Рекомендуется использовать CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT.

CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
Включите проверку отзыва для каждого сертификата в цепочке сертификатов, за исключением корневого сертификата. Это рекомендуемый вариант для проверки отзыва сертификата. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData .

Примечание Этот флаг эквивалентен CRYPTUI_ENABLE_REVOCATION_CHECKING.

CRYPTUI_DISABLE_HTMLLINK
Отключите кнопку СПРАВКА HTML (?) в диалоговом окне Сертификат .
CRYPTUI_DISABLE_ISSUERSTATEMENT
Отключите кнопку Оператор издателя на вкладке Общие диалогового окна Сертификат .
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
Отключите проверку отзыва по сети. Установите этот флаг, чтобы убедиться, что функция CryptUIDlgViewCertificate использует локальный кэш для получения сертификата и не пытается получить сертификат из сети.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Этот флаг не поддерживается.

szTitle

Указатель на строку, завершающуюся значением NULL, которая содержит заголовок окна.

pCertContext

Указатель на структуру CERT_CONTEXT , содержащую контекст сертификата для отображения.

rgszPurposes

Массив указателей на строки со значением NULL, которые содержат цели, для которых будет проверяться этот сертификат.

cPurposes

Число целей в массиве rgszPurposes .

pCryptProviderData

Если функция WinVerifyTrust уже была вызвана для сертификата и также была вызвана функция WTHelperProvDataFromStateData , передайте указатель на структуру состояния, полученную из вызова WTHelperProvDataFromStateData. Если задан параметр pCryptProviderData , необходимо также задать fpCryptProviderDataTrustedUsage, idxSigner, idxCert и fCounterSignature .

hWVTStateData

Если winVerifyTrust уже был вызван для сертификата, а WTHelperProvDataFromStateData не был вызван, передайте член hWVTStateDataструктуры WINTRUST_DATA . Если задан параметр hWVTStateData , необходимо также задать fpCryptProviderDataTrustedUsage, idxSigner, idxCert и fCounterSignature .

fpCryptProviderDataTrustedUsage

Если был вызван WinVerifyTrust , это результат того, является ли сертификат доверенным.

idxSigner

Индекс подписывателя для просмотра.

idxCert

Индекс сертификата, просматриваемого в цепочке подписывателя. Контекст сертификата этого сертификата должен соответствовать pCertContext.

fCounterSigner

Значение TRUE , если просматривается подпись. Если задано значение TRUE, значение idxCounterSigner должно быть допустимым.

idxCounterSigner

Индекс подписи для просмотра.

cStores

Количество других хранилищ в массиве rghStores хранилищ сертификатов для поиска при создании и проверке цепочки сертификатов.

rghStores

Массив HCERTSTORE обрабатывает другие хранилища сертификатов для поиска при создании и проверке цепочки сертификатов.

cPropSheetPages

Количество страниц свойств, добавляемых в диалоговое окно.

rgPropSheetPages

Массив страниц свойств, добавляемых в диалоговое окно. Каждая страница в этом массиве не будет получать lParam в структуре PROPSHEETPAGE , как lParam в WM_INITDIALOG сообщении. Вместо этого он получит указатель на структуру CRYPTUI_INITDIALOG_STRUCT . Он содержит lParam в PROPSHEETPAGE и указатель на CERT_CONTEXT , для которого отображается страница.

nStartPage

Индекс начальной страницы, которая будет отображаться. Если задан самый высокий бит (0x8000), предполагается, что индекс индексирует rgPropSheetPages (после удаления самого большого бита, например, 0x8000 будет указывать первую страницу в rgPropSheetPages). Если самый высокий бит равен нулю, nStartPage будет начальным индексом страниц свойств диалогового окна сертификата по умолчанию.

Комментарии

Примечание

Заголовок cryptuiapi.h определяет CRYPTUI_VIEWCERTIFICATE_STRUCT как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть cryptuiapi.h

См. также раздел

CryptUIDlgViewCertificate