estructura CRYPTUI_VIEWCERTIFICATE_STRUCTA (cryptuiapi.h)

La estructura CRYPTUI_VIEWCERTIFICATE_STRUCT contiene información sobre un certificado que se va a ver. Esta estructura se usa en la función CryptUIDlgViewCertificate .

Sintaxis

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;

Miembros

dwSize

Tamaño, en bytes, de la estructura CRYPTUI_VIEWCERTIFICATE_STRUCT .

hwndParent

Identificador de la ventana que es el elemento primario del cuadro de diálogo generado por CryptUIDlgViewCertificate.

dwFlags

Este miembro puede ser uno o varios de los valores siguientes.

Valor Significado
CRYPTUI_HIDE_HIERARCHYPAGE
La página Ruta de certificación está deshabilitada.
CRYPTUI_HIDE_DETAILPAGE
La página Detalles está deshabilitada.
CRYPTUI_DISABLE_EDITPROPERTIES
El usuario no puede cambiar las propiedades.
CRYPTUI_ENABLE_EDITPROPERTIES
El usuario puede cambiar las propiedades.
CRYPTUI_DISABLE_ADDTOSTORE
El botón Instalar está deshabilitado.
CRYPTUI_ENABLE_ADDTOSTORE
El botón Instalar está habilitado.
CRYPTUI_ACCEPT_DECLINE_STYLE
Las páginas o botones que permiten al usuario aceptar o rechazar cualquier decisión están deshabilitadas.
CRYPTUI_IGNORE_UNTRUSTED_ROOT
Se omite un error raíz que no es de confianza.
CRYPTUI_DONT_OPEN_STORES
Los almacenes de confianza conocidos no se usarán para crear la cadena.
CRYPTUI_ONLY_OPEN_ROOT_STORE
No se usará un almacén raíz de confianza conocido para crear la cadena.
CRYPTUI_WARN_UNTRUSTED_ROOT
Use solo al ver certificados en equipos remotos. Si se usa esta marca, el primer elemento de rghStores debe ser el identificador del almacén raíz en el equipo remoto.
CRYPTUI_ENABLE_REVOCATION_CHECKING
Habilite la comprobación de revocación con el comportamiento predeterminado. El comportamiento predeterminado es habilitar la comprobación de revocación de toda la cadena de certificados, excepto el certificado raíz. Válido solo si no se pasa el miembro de unión pCryptProviderData ni hWVTStateData .
CRYPTUI_WARN_REMOTE_TRUST
Al compilar una cadena de certificados para un equipo remoto, advierte de que es posible que la cadena no sea de confianza en el equipo remoto.
CRYPTUI_DISABLE_EXPORT
Si se establece esta marca, el botón Copiar en archivo se deshabilitará en la página Detalles .
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
Habilite la comprobación de revocación solo en el certificado hoja de la cadena de certificados. Válido solo si no se pasa el miembro de unión pCryptProviderData ni hWVTStateData .
CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN
Habilite la comprobación de revocación en cada certificado de la cadena de certificados. Válido solo si no se pasa el miembro de unión pCryptProviderData ni hWVTStateData .

Nota Dado que los certificados raíz rara vez contienen información que permite la comprobación de revocación, se espera que el uso de esta opción normalmente produzca un error en la función CryptUIDlgViewCertificate . La opción recomendada es usar CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT.

CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
Habilite la comprobación de revocación en cada certificado de la cadena de certificados, excepto el certificado raíz. Esta es la opción recomendada para usar para la comprobación de revocación de certificados. Válido solo si no se pasa el miembro de unión pCryptProviderData ni hWVTStateData .

Nota Esta marca es equivalente a CRYPTUI_ENABLE_REVOCATION_CHECKING.

CRYPTUI_DISABLE_HTMLLINK
Deshabilite el botón Ayuda HTML (?) en el cuadro de diálogo Certificado .
CRYPTUI_DISABLE_ISSUERSTATEMENT
Deshabilite el botón Instrucción del emisor en la pestaña General del cuadro de diálogo Certificado .
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
Deshabilite la comprobación de revocación en línea. Establezca esta marca para asegurarse de que la función CryptUIDlgViewCertificate usa la memoria caché local para recuperar el certificado y no intenta recuperar el certificado de la red.

Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite.

szTitle

Puntero a una cadena terminada en null que contiene el título de la ventana.

pCertContext

Puntero a la estructura CERT_CONTEXT que contiene el contexto del certificado que se va a mostrar.

rgszPurposes

Matriz de punteros a cadenas terminadas en null que contienen los fines para los que se validará este certificado.

cPurposes

Número de propósitos de la matriz rgszPurposes .

pCryptProviderData

Si ya se ha llamado a la función WinVerifyTrust para el certificado y también se llamó a la función WTHelperProvDataFromStateData , pase un puntero a la estructura de estado que se adquirió de la llamada a WTHelperProvDataFromStateData. Si se establece pCryptProviderData , también debe establecerse fpCryptProviderDataTrustedUsage, idxSigner, idxCert y fCounterSignature .

hWVTStateData

Si ya se ha llamado a WinVerifyTrust para el certificado y no se llamó a WTHelperProvDataFromStateData , pase el miembro hWVTStateData de la estructura WINTRUST_DATA . Si se establece hWVTStateData , también debe establecerse fpCryptProviderDataTrustedUsage, idxSigner, idxCert y fCounterSignature .

fpCryptProviderDataTrustedUsage

Si se llamó a WinVerifyTrust , este es el resultado de si el certificado era de confianza.

idxSigner

Índice del firmante que se va a ver.

idxCert

Índice del certificado que se está viendo dentro de la cadena del firmante. El contexto de certificado de este certificado debe coincidir con pCertContext.

fCounterSigner

TRUE si se está viendo una contrafirma. Si es TRUE, idxCounterSigner debe ser válido.

idxCounterSigner

Índice del contrafirmador que se va a ver.

cStores

El número de otros almacenes de la matriz rghStores de los almacenes de certificados que se van a buscar al compilar y validar la cadena de certificados.

rghStores

Una matriz de HCERTSTORE controla otros almacenes de certificados para buscar al compilar y validar la cadena de certificados.

cPropSheetPages

Número de páginas de propiedades que se van a agregar al cuadro de diálogo.

rgPropSheetPages

Matriz de páginas de propiedades que se van a agregar al cuadro de diálogo. Cada página de esta matriz no recibirá el lParam en la estructura PROPSHEETPAGE como lParam en el mensaje WM_INITDIALOG . En su lugar, recibirá un puntero a una estructura de CRYPTUI_INITDIALOG_STRUCT . Contiene el lParam en PROPSHEETPAGE y el puntero a la CERT_CONTEXT para la que se muestra la página.

nStartPage

Índice de la página inicial que se mostrará. Si se establece el bit más alto (0x8000), se supone que el índice es rgPropSheetPages (después de quitar el bit más alto, por ejemplo, 0x8000 indicará la primera página de rgPropSheetPages). Si el bit más alto es cero, nStartPage será el índice inicial de las páginas de propiedades del cuadro de diálogo de certificado predeterminado.

Comentarios

Nota

El encabezado cryptuiapi.h define CRYPTUI_VIEWCERTIFICATE_STRUCT como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado cryptuiapi.h

Consulte también

CryptUIDlgViewCertificate