Partager via


structure CERT_SELECT_STRUCT_W (cryptdlg.h)

La structure CERT_SELECT_STRUCT contient des critères sur lesquels sélectionner des certificats présentés dans une boîte de dialogue de sélection de certificat. Cette structure est utilisée dans la fonction CertSelectCertificate.

Syntaxe

typedef struct tagCSSW {
  DWORD           dwSize;
  HWND            hwndParent;
  HINSTANCE       hInstance;
  LPCWSTR         pTemplateName;
  DWORD           dwFlags;
  LPCWSTR         szTitle;
  DWORD           cCertStore;
  HCERTSTORE      *arrayCertStore;
  LPCSTR          szPurposeOid;
  DWORD           cCertContext;
  PCCERT_CONTEXT  *arrayCertContext;
  LPARAM          lCustData;
  PFNCMHOOKPROC   pfnHook;
  PFNCMFILTERPROC pfnFilter;
  LPCWSTR         szHelpFileName;
  DWORD           dwHelpId;
  HCRYPTPROV      hprov;
} CERT_SELECT_STRUCT_W, *PCERT_SELECT_STRUCT_W;

Membres

dwSize

Taille, en octets, de cette structure.

hwndParent

Handle vers la fenêtre parente de toutes les boîtes de dialogue qui CertSelectCertificate génère.

hInstance

Handle du module dont le fichier exécutable contient le modèle de boîte de dialogue.

pTemplateName

Si l’indicateur CSS_ENABLETEMPLATE est défini dans le membre dwFlags, définissez pTemplateName sur un pointeur vers un objet mémoire globale qui contient le modèle qui DialogBoxIndirectParam utilise pour créer la boîte de dialogue. Un modèle de boîte de dialogue se compose d’un en-tête qui décrit la boîte de dialogue. L’en-tête est suivi d’un ou plusieurs blocs de données supplémentaires qui décrivent chacun des contrôles de la boîte de dialogue. Le modèle peut utiliser le format standard ou le format étendu.

Si l’indicateur CSS_ENABLETEMPLATEHANDLE est défini dans dwFlags, pTemplateName spécifie le modèle de boîte de dialogue. pTemplateName est soit le pointeur vers une chaîne de caractères terminée par null qui spécifie le nom du modèle de boîte de dialogue, soit une valeur entière qui spécifie l’identificateur de ressource du modèle de boîte de dialogue. Si le spécifie un identificateur de ressource, son mot de classement élevé doit être égal à zéro et son mot de bas ordre doit contenir l’identificateur. Une façon de créer cette valeur entière consiste à utiliser la macro MAKEINTRESOURCE.

dwFlags

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

Valeur Signification
CSS_HIDE_PROPERTIES
Masquez le bouton Propriétés .
CSS_ENABLEHOOK
Passez une procédure de hook dans pfnHook.
CSS_ALLOWMULTISELECT
Activez la sélection multiple de certificats. Cette option n’est actuellement pas prise en charge et est ignorée.
CSS_SHOW_HELP
Afficher le bouton Aide.
CSS_ENABLETEMPLATE
Provoquez fonction CertSelectCertificate appeler la fonction DialogBoxIndirectParam pour créer une boîte de dialogue. Pour plus d’informations, consultez pTemplateName.
CSS_ENABLETEMPLATEHANDLE
Causez la fonction CertSelectCertificate appeler la fonction DialogBoxParam pour créer une boîte de dialogue. Pour plus d’informations, consultez pTemplateName.

szTitle

Pointeur vers une chaîne qui contient le texte du titre de la boîte de dialogue.

cCertStore

Nombre d’éléments dans arrayCertStore tableau.

arrayCertStore

Pointeur vers le tableau de magasins de certificats à partir duquel la boîte de dialogue énumère et affiche les certificats. Le membre cCertStore contient le nombre d’éléments de ce tableau.

szPurposeOid

Pointeur vers une représentation sous forme de chaîne d’un identificateur d’objet (OID) pour une utilisation améliorée de la clé (EKU). Si un OID est fourni, seuls les certificats qui incluent cette référence EKU sont affichés.

cCertContext

Nombre d’éléments dans le tableau arrayCertContext. Une fois la fonction CertSelectCertificate retournée, ce membre contient le nombre de certificats sélectionnés par l’utilisateur. Actuellement, un seul certificat peut être sélectionné par l’utilisateur.

arrayCertContext

Pointeur vers un tableau de structures CERT_CONTEXT. Le membre cCertContext spécifie le nombre d’éléments de ce tableau. Ce tableau doit contenir au moins un élément.

Les certificats représentés par ces structures sont sélectionnés lorsque la boîte de dialogue affichée par la fonction CertSelectCertificate s’affiche initialement. Actuellement, seul le premier certificat de ce tableau est utilisé. Le premier certificat de ce tableau est publié avec la fonction CertFreeCertificateContext si la fonction CertSelectCertificate réussit. Si le premier élément de ce tableau est NULL, aucun certificat n’est initialement sélectionné dans la boîte de dialogue.

Une fois la fonction CertSelectCertificate retournée, ce tableau contient les certificats sélectionnés par l’utilisateur. Actuellement, un seul certificat peut être sélectionné par l’utilisateur.

lCustData

Pointeur vers un tableau de valeurs d’octets qui contiennent des données personnalisées transmises à la procédure de filtre référencée par pfnFilter. Ces données personnalisées ne sont pas utilisées par la fonction CertSelectCertificate.

pfnHook

Pointeur de fonction PFNCMHOOKPROC vers la fonction de rappel hook. Cette fonction est appelée avant que les messages ne soient traités par la boîte de dialogue. Pour plus d’informations, consultez hooks.

pfnFilter

Un PFNCMFILTERPROC pointeur de fonction vers la fonction de rappel de filtre. Cela est appelé pour déterminer les certificats qui seront affichés par la boîte de dialogue.

szHelpFileName

Pointeur vers une chaîne terminée par null qui contient le chemin d’accès complet au fichier d’aide.

dwHelpId

Identificateur de contexte de la rubrique. Pour plus d’informations, consultez
winHelp.

hprov

Handle vers le fournisseur de services de chiffrement (CSP) à utiliser pour la vérification des certificats.

Remarques

Note

L’en-tête cryptdlg.h définit CERT_SELECT_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. Le mélange 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
d’en-tête cryptdlg.h

Voir aussi

CertSelectCertificate