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


структура CRYPTUI_SELECTCERTIFICATE_STRUCT

Структура CRYPTUI_SELECTCERTIFICATE_STRUCT содержит сведения о диалоговом окне, отображаемом функцией CryptUIDlgSelectCertificate .

Синтаксис

typedef struct _CRYPTUI_SELECTCERTIFICATE_STRUCT {
  DWORD               dwSize;
  HWND                hwndParent;
  DWORD               dwFlags;
  LPCTSTR             szTitle;
  DWORD               dwDontUseColumn;
  LPCTSTR             szDisplayString;
  PFNCFILTERPROC      pFilterCallback;
  PFNCCERTDISPLAYPROC pDisplayCallback;
  void                *pvCallbackData;
  DWORD               cDisplayStores;
  HCERTSTORE          *rghDisplayStores;
  DWORD               cStores;
  HCERTSTORE          *rghStores;
  DWORD               cPropSheetPages;
  LPCPROPSHEETPAGE    rgPropSheetPages;
  HCERTSTORE          hSelectedCertStore;
} CRYPTUI_SELECTCERTIFICATE_STRUCT, *PCRYPTUI_SELECTCERTIFICATE_STRUCT;

Члены

dwSize

Размер данной структуры (в байтах).

hwndParent

Дескриптор родительского окна диалогового окна. Если это значение равно NULL, родительское окно является окном рабочего стола по умолчанию.

dwFlags

Задает дополнительные параметры для функции CryptUIDlgSelectCertificate . Это может быть ноль или побитовое значение ИЛИ из следующих значений.

Значение Значение
CRYPTUI_SELECTCERT_ADDFROMDS
Зарезервировано.
CRYPTUI_SELECTCERT_LEGACY
Указывает, что будет отображаться устаревшее диалоговое окно.
CRYPTUI_SELECTCERT_MULTISELECT
Позволяет пользователю выбрать несколько сертификатов в диалоговом окне. Если этот флаг установлен, функция CryptUIDlgSelectCertificate всегда возвращает значение NULL. Элемент hSelectedCertStore этой структуры должен содержать дескриптор хранилища сертификатов. Выбранные пользователем сертификаты будут добавлены в это хранилище.
CRYPTUI_SELECTCERT_PUT_WINDOW_TOPMOST
Заставляет пользовательский интерфейс шифрования быть верхним окном на экране.

 

szTitle

Заголовок диалогового окна. Если значение этого элемента равно NULL, используется заголовок по умолчанию "Выбор сертификата".

dwDontUseColumn

Флаги, которые можно объединить для исключения столбцов отображения.

Значение Значение
CRYPTUI_SELECT_ISSUEDTO_COLUMN
1 (0x1)
Не отображать данные ISSUEDTO .
CRYPTUI_SELECT_ISSUEDBY_COLUMN
2 (0x2)
Не отображать данные ISSUEDBY .
CRYPTUI_SELECT_INTENDEDUSE_COLUMN
4 (0x4)
Не отображать сведения о предполагаемом использовании .
CRYPTUI_SELECT_FRIENDLYNAME_COLUMN
8 (0x8)
Не отображать сведения об имени.
CRYPTUI_SELECT_LOCATION_COLUMN
16 (0x10)
Не отображать сведения о расположении.
CRYPTUI_SELECT_EXPIRATION_COLUMN
32 (0x20)
Не отображать сведения об истечении срока действия.

 

szDisplayString

Текст, отображаемый в диалоговом окне для указания пользователя. Если значение этого элемента равно NULL, используется строка по умолчанию "Выберите сертификат, который вы хотите использовать".

pFilterCallback

Указатель на функцию обратного вызова PFNCFILTERPROC , которая фильтрует сертификаты, отображаемые в диалоговом окне.

pDisplayCallback

Указатель на функцию обратного вызова PFNCCERTDISPLAYPROC , отображающую сертификаты, которые пользователь выбирает для просмотра.

pvCallbackData

Дополнительные данные, передаваемые в функции обратного вызова, заданные членами pFilterCallback и pDisplayCallback .

cDisplayStores

Количество хранилищ сертификатов в массиве rghDisplayStores .

rghDisplayStores

Указатель на массив хранилищ, содержащих сертификаты, доступные для выбора в диалоговом окне.

cStores

Количество хранилищ сертификатов в массиве rghStores .

rghStores

Указатель на массив хранилищ сертификатов для поиска при построении цепочки сертификатов и проверке доверия для сертификатов, отображаемых в диалоговом окне.

cPropSheetPages

Количество страниц свойств в массиве rgPropSheetPages .

rgPropSheetPages

Указатель на массив структур PROPSHEETPAGE , представляющих страницы свойств, которые передаются в диалоговое окно просмотра сертификата при выборе сертификата для просмотра.

hSelectedCertStore

Дескриптор хранилища сертификатов, созданного вызывающим элементом. Выбранные пользователем сертификаты добавляются в это хранилище. Если количество сертификатов в этом хранилище одинаково до и после вызова CryptUIDlgSelectCertificate, пользователь закрыл диалоговое окно, не выбирая сертификаты.

Этот элемент не используется, если элемент dwFlags этой структуры не содержит флаг CRYPTUI_SELECTCERT_MULTISELECT .

Требования

Требование Значение
Минимальная версия клиента
Windows XP [только классические приложения]
Минимальная версия сервера
Windows Server 2003 [только классические приложения]
Имя в кодировке Юникод и ANSI
CRYPTUI_SELECTCERTIFICATE_STRUCTW (Юникод) и CRYPTUI_SELECTCERTIFICATE_STRUCTA (ANSI)

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

CryptUIDlgSelectCertificate