Partager via


CRYPTUI_VIEWCERTIFICATE_STRUCTW structure (cryptuiapi.h)

La structure CRYPTUI_VIEWCERTIFICATE_STRUCT contient des informations sur un certificat à afficher. Cette structure est utilisée dans la fonction CryptUIDlgViewCertificate .

Syntaxe

typedef struct tagCRYPTUI_VIEWCERTIFICATE_STRUCTW {
  DWORD             dwSize;
  HWND              hwndParent;
  DWORD             dwFlags;
  LPCWSTR           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;
  LPCPROPSHEETPAGEW rgPropSheetPages;
  DWORD             nStartPage;
} CRYPTUI_VIEWCERTIFICATE_STRUCTW, *PCRYPTUI_VIEWCERTIFICATE_STRUCTW;

Membres

dwSize

Taille, en octets, de la structure CRYPTUI_VIEWCERTIFICATE_STRUCT .

hwndParent

Handle de la fenêtre qui est le parent de la boîte de dialogue produite par CryptUIDlgViewCertificate.

dwFlags

Ce membre peut être une ou plusieurs des valeurs suivantes.

Valeur Signification
CRYPTUI_HIDE_HIERARCHYPAGE
La page Chemin de certification est désactivée.
CRYPTUI_HIDE_DETAILPAGE
La page Détails est désactivée.
CRYPTUI_DISABLE_EDITPROPERTIES
L’utilisateur n’est pas autorisé à modifier les propriétés.
CRYPTUI_ENABLE_EDITPROPERTIES
L’utilisateur est autorisé à modifier les propriétés.
CRYPTUI_DISABLE_ADDTOSTORE
Le bouton Installer est désactivé.
CRYPTUI_ENABLE_ADDTOSTORE
Le bouton Installer est activé.
CRYPTUI_ACCEPT_DECLINE_STYLE
Les pages ou boutons qui permettent à l’utilisateur d’accepter ou de refuser toute décision sont désactivés.
CRYPTUI_IGNORE_UNTRUSTED_ROOT
Une erreur racine non approuvée est ignorée.
CRYPTUI_DONT_OPEN_STORES
Les magasins approuvés connus ne seront pas utilisés pour générer la chaîne.
CRYPTUI_ONLY_OPEN_ROOT_STORE
Un magasin racine approuvé connu ne sera pas utilisé pour générer la chaîne.
CRYPTUI_WARN_UNTRUSTED_ROOT
Utilisez uniquement lors de l’affichage des certificats sur des ordinateurs distants. Si cet indicateur est utilisé, le premier élément de rghStores doit être le handle du magasin racine sur l’ordinateur distant.
CRYPTUI_ENABLE_REVOCATION_CHECKING
Activez la vérification de la révocation avec le comportement par défaut. Le comportement par défaut consiste à activer la vérification de la révocation de l’ensemble de la chaîne de certificats à l’exception du certificat racine. Valide uniquement si ni le membre de l’union pCryptProviderData ni hWVTStateData n’est passé.
CRYPTUI_WARN_REMOTE_TRUST
Lors de la création d’une chaîne de certificats pour un ordinateur distant, avertissez que la chaîne peut ne pas être approuvée sur l’ordinateur distant.
CRYPTUI_DISABLE_EXPORT
Si cet indicateur est défini, le bouton Copier dans un fichier est désactivé dans la page Détails .
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
Activez la vérification de la révocation uniquement sur le certificat feuille dans la chaîne de certificats. Valide uniquement si ni le membre de l’union pCryptProviderData ni hWVTStateData n’est passé.
CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN
Activez la vérification de révocation sur chaque certificat dans la chaîne de certificats. Valide uniquement si ni le membre de l’union pCryptProviderData ni hWVTStateData n’est passé.

Note Étant donné que les certificats racines contiennent rarement des informations permettant la vérification de la révocation, il est prévu que l’utilisation de cette option entraîne généralement l’échec de la fonction CryptUIDlgViewCertificate . L’option recommandée est d’utiliser CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT.

CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
Activez la vérification de la révocation sur chaque certificat de la chaîne de certificats à l’exception du certificat racine. Il s’agit de l’option recommandée à utiliser pour la vérification de la révocation des certificats. Valide uniquement si ni le membre de l’union pCryptProviderData ni hWVTStateData n’est passé.

Note Cet indicateur équivaut à CRYPTUI_ENABLE_REVOCATION_CHECKING.

CRYPTUI_DISABLE_HTMLLINK
Désactivez le bouton Aide HTML ( ?) dans la boîte de dialogue Certificat .
CRYPTUI_DISABLE_ISSUERSTATEMENT
Désactivez le bouton Issuer Statement (Instruction de l’émetteur ) sous l’onglet Général de la boîte de dialogue Certificat .
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
Désactivez la vérification de la révocation en ligne. Définissez cet indicateur pour vous assurer que la fonction CryptUIDlgViewCertificate utilise le cache local pour récupérer le certificat et ne tente pas de récupérer le certificat à partir du réseau.

Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Cet indicateur n’est pas pris en charge.

szTitle

Pointeur vers une chaîne terminée par null qui contient le titre de la fenêtre.

pCertContext

Pointeur vers la structure CERT_CONTEXT qui contient le contexte de certificat à afficher.

rgszPurposes

Tableau de pointeurs vers des chaînes terminées par null qui contiennent les objectifs pour lesquels ce certificat sera validé.

cPurposes

Nombre d’objectifs dans le tableau rgszPurposes .

pCryptProviderData

Si la fonction WinVerifyTrust a déjà été appelée pour le certificat et que la fonction WTHelperProvDataFromStateData a également été appelée, transmettez un pointeur vers la structure d’état qui a été acquise à partir de l’appel à WTHelperProvDataFromStateData. Si pCryptProviderData est défini, fpCryptProviderDataTrustedUsage, idxSigner, idxCert et fCounterSignature doivent également être définis.

hWVTStateData

Si WinVerifyTrust a déjà été appelé pour le certificat et que WTHelperProvDataFromStateData n’a pas été appelé, transmettez le membre hWVTStateData de la structure WINTRUST_DATA . Si hWVTStateData est défini, fpCryptProviderDataTrustedUsage, idxSigner, idxCert et fCounterSignature doivent également être définis.

fpCryptProviderDataTrustedUsage

Si WinVerifyTrust a été appelé, cela est dû au fait que le certificat a été approuvé ou non.

idxSigner

Index du signataire à afficher.

idxCert

Index du certificat qui est consulté dans la chaîne de signataires. Le contexte de certificat de ce certificat doit correspondre à pCertContext.

fCounterSigner

TRUE si une contre-signature est en cours d’affichage. Si cette valeur est TRUE, idxCounterSigner doit être valide.

idxCounterSigner

Index du contre-expéditeur à afficher.

cStores

Nombre d’autres magasins dans le tableau rghStores de magasins de certificats à rechercher lors de la création et de la validation de la chaîne de certificats.

rghStores

Tableau de handles HCERTSTORE vers d’autres magasins de certificats à rechercher lors de la génération et de la validation de la chaîne de certificats.

cPropSheetPages

Nombre de pages de propriétés à ajouter à la boîte de dialogue.

rgPropSheetPages

Tableau de pages de propriétés à ajouter à la boîte de dialogue. Chaque page de ce tableau ne recevra pas lParam dans la structure PROPSHEETPAGE en tant que lParam dans le message WM_INITDIALOG . Il reçoit à la place un pointeur vers une structure CRYPTUI_INITDIALOG_STRUCT . Il contient l’élément lParam dans PROPSHEETPAGE et le pointeur vers le CERT_CONTEXT pour lequel la page est affichée.

nStartPage

Index de la page initiale qui sera affichée. Si le bit le plus élevé (0x8000) est défini, l’index est supposé indexer rgPropSheetPages (une fois le bit le plus élevé supprimé, par exemple, 0x8000 indique la première page dans rgPropSheetPages). Si le bit le plus élevé est égal à zéro, nStartPage est l’index de départ des pages de propriétés de la boîte de dialogue de certificat par défaut.

Remarques

Notes

L’en-tête cryptuiapi.h définit CRYPTUI_VIEWCERTIFICATE_STRUCT en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête cryptuiapi.h

Voir aussi

CryptUIDlgViewCertificate