структура 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
Этот элемент может быть одним или несколькими из следующих значений.
Значение | Значение |
---|---|
|
Страница Путь сертификации отключена. |
|
Страница "Сведения " отключена. |
|
Пользователь не может изменять свойства. |
|
Пользователю разрешено изменять свойства. |
|
Кнопка Установить отключена. |
|
Кнопка Установить включена. |
|
Страницы или кнопки, позволяющие пользователю принимать или отклонять любое решение, отключаются. |
|
Недоверенная корневая ошибка игнорируется. |
|
Известные доверенные хранилища не будут использоваться для построения цепочки. |
|
Известное доверенное корневое хранилище не будет использоваться для построения цепочки. |
|
Используйте только при просмотре сертификатов на удаленных компьютерах. Если этот флаг используется, первым элементом rghStores должен быть дескриптор корневого хранилища на удаленном компьютере. |
|
Включите проверку отзыва с поведением по умолчанию. Поведение по умолчанию — включить проверку отзыва всей цепочки сертификатов, за исключением корневого сертификата. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData . |
|
При создании цепочки сертификатов для удаленного компьютера предупредите, что цепочка может не быть доверенной на удаленном компьютере. |
|
Если этот флаг установлен, кнопка Копировать в файл будет отключена на странице Сведения . |
|
Включите проверку отзыва только для конечного сертификата в цепочке сертификатов. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData . |
|
Включите проверку отзыва для каждого сертификата в цепочке сертификатов. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData .
Примечание Так как корневые сертификаты редко содержат сведения, позволяющие проверять отзыв, ожидается, что использование этого параметра обычно приводит к сбою функции CryptUIDlgViewCertificate . Рекомендуется использовать CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT. |
|
Включите проверку отзыва для каждого сертификата в цепочке сертификатов, за исключением корневого сертификата. Это рекомендуемый вариант для проверки отзыва сертификата. Допустимо, только если не передается ни pCryptProviderData , ни член объединения hWVTStateData .
Примечание Этот флаг эквивалентен CRYPTUI_ENABLE_REVOCATION_CHECKING. |
|
Отключите кнопку СПРАВКА HTML (?) в диалоговом окне Сертификат . |
|
Отключите кнопку Оператор издателя на вкладке Общие диалогового окна Сертификат . |
|
Отключите проверку отзыва по сети. Установите этот флаг, чтобы убедиться, что функция 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 |