CERT_SELECT_STRUCT_A-Struktur (cryptdlg.h)
Die CERT_SELECT_STRUCT-Struktur enthält Kriterien zum Auswählen von Zertifikaten, die in einem Zertifikatauswahldialogfeld angezeigt werden. Diese Struktur wird in der Funktion CertSelectCertificate verwendet.
Syntax
typedef struct tagCSSA {
DWORD dwSize;
HWND hwndParent;
HINSTANCE hInstance;
LPCSTR pTemplateName;
DWORD dwFlags;
LPCSTR szTitle;
DWORD cCertStore;
HCERTSTORE *arrayCertStore;
LPCSTR szPurposeOid;
DWORD cCertContext;
PCCERT_CONTEXT *arrayCertContext;
LPARAM lCustData;
PFNCMHOOKPROC pfnHook;
PFNCMFILTERPROC pfnFilter;
LPCSTR szHelpFileName;
DWORD dwHelpId;
HCRYPTPROV hprov;
} CERT_SELECT_STRUCT_A, *PCERT_SELECT_STRUCT_A;
Member
dwSize
Die Größe (in Bytes) dieser Struktur.
hwndParent
Ein Handle für das übergeordnete Fenster aller Dialogfelder, die CertSelectCertificate generiert.
hInstance
Ein Handle für das Modul, dessen ausführbare Datei die Dialogfeldvorlage enthält.
pTemplateName
Wenn das flag CSS_ENABLETEMPLATE im dwFlags-Element festgelegt ist, legen Sie pTemplateName auf einen Zeiger auf ein globales Speicherobjekt fest, das die Vorlage enthält, die DialogBoxIndirectParam zum Erstellen des Dialogfelds verwendet. Eine Dialogfeldvorlage besteht aus einem Header, der das Dialogfeld beschreibt. Auf den Header folgt ein oder mehrere zusätzliche Datenblöcke, die die einzelnen Steuerelemente im Dialogfeld beschreiben. Die Vorlage kann entweder das Standardformat oder das erweiterte Format verwenden.
Wenn das CSS_ENABLETEMPLATEHANDLE-Flag in dwFlags festgelegt ist, gibt pTemplateName die Dialogfeldvorlage an. pTemplateName ist entweder der Zeiger auf eine NULL-Zeichenfolge, die den Namen der Dialogfeldvorlage angibt, oder ein ganzzahliger Wert, der den Ressourcenbezeichner der Dialogfeldvorlage angibt. Wenn der einen Ressourcenbezeichner angibt, muss das Wort mit hoher Reihenfolge null sein, und sein Wort mit niedriger Reihenfolge muss den Bezeichner enthalten. Eine Möglichkeit, diesen ganzzahligen Wert zu erstellen, besteht darin, das MAKEINTRESOURCE-Makro zu verwenden.
dwFlags
Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.
Wert | Bedeutung |
---|---|
|
Blenden Sie die Schaltfläche Eigenschaften aus. |
|
Übergeben Sie eine Hookprozedur in pfnHook. |
|
Aktivieren Sie die mehrfache Auswahl von Zertifikaten. Diese Option wird derzeit nicht unterstützt und ignoriert. |
|
Zeigen Sie die Schaltfläche Hilfe an. |
|
Bewirkt , dass die CertSelectCertificate-Funktion die DialogBoxIndirectParam-Funktion aufruft , um ein Dialogfeld zu erstellen. Weitere Informationen finden Sie unter pTemplateName. |
|
Bewirkt, dass die CertSelectCertificate-Funktion die DialogBoxParam-Funktion aufruft , um ein Dialogfeld zu erstellen. Weitere Informationen finden Sie unter pTemplateName. |
szTitle
Ein Zeiger auf eine Zeichenfolge, die den Text für den Titel des Dialogfelds enthält.
cCertStore
Die Anzahl der Elemente im ArrayCertStore.The number of elements in arrayCertStore array.
arrayCertStore
Ein Zeiger auf das Array von Zertifikatspeichern, von dem das Dialogfeld die Zertifikate aufzählt und anzeigt. Das cCertStore-Element enthält die Anzahl der Elemente in diesem Array.
szPurposeOid
Ein Zeiger auf eine Zeichenfolgendarstellung eines Objektbezeichners (Object Identifier, OID) für eine erweiterte Schlüsselverwendung (Enhanced Key Usage, EKU). Wenn eine OID bereitgestellt wird, werden nur Zertifikate angezeigt, die diese EKU enthalten.
cCertContext
Die Anzahl der Elemente im ArrayCertContext.The number of elements in the arrayCertContext array. Nachdem die CertSelectCertificate-Funktion zurückgegeben wurde, enthält dieses Element die Anzahl der Zertifikate, die vom Benutzer ausgewählt wurden. Derzeit kann nur ein Zertifikat vom Benutzer ausgewählt werden.
arrayCertContext
Ein Zeiger auf ein Array von CERT_CONTEXT Strukturen. Das cCertContext-Element gibt die Anzahl der Elemente in diesem Array an. Dieses Array muss mindestens ein Element enthalten.
Die von diesen Strukturen dargestellten Zertifikate werden ausgewählt, wenn das von der CertSelectCertificate-Funktion angezeigte Dialogfeld zunächst angezeigt wird. Derzeit wird nur das erste Zertifikat in diesem Array verwendet. Das erste Zertifikat in diesem Array wird mit der Funktion CertFreeCertificateContext freigegeben, wenn die CertSelectCertificate-Funktion erfolgreich ist. Wenn das erste Element in diesem Array NULL ist, werden zunächst keine Zertifikate im Dialogfeld ausgewählt.
Nachdem die CertSelectCertificate-Funktion zurückgegeben wurde, enthält dieses Array die Zertifikate, die vom Benutzer ausgewählt wurden. Derzeit kann nur ein Zertifikat vom Benutzer ausgewählt werden.
lCustData
Ein Zeiger auf ein Array von Bytewerten, die benutzerdefinierte Daten enthalten, die an die Filterprozedur übergeben werden, auf die von pfnFilter verwiesen wird. Diese benutzerdefinierten Daten werden nicht von der CertSelectCertificate-Funktion verwendet.
pfnHook
Ein PFNCMHOOKPROC-Funktionszeiger auf die Hook-Rückruffunktion. Diese Funktion wird aufgerufen, bevor Nachrichten vom Dialogfeld verarbeitet werden. Weitere Informationen finden Sie unter Hooks.
pfnFilter
Ein PFNCMFILTERPROC-Funktionszeiger auf die Filterrückruffunktion. Dies wird aufgerufen, um zu bestimmen, welche Zertifikate vom Dialogfeld angezeigt werden.
szHelpFileName
Ein Zeiger auf eine NULL-Zeichenfolge, die den vollständigen Pfad zur Hilfedatei enthält.
dwHelpId
Der Kontextbezeichner für das Thema. Weitere Informationen finden Sie unter
WinHelp.
hprov
Ein Handle für den Kryptografiedienstanbieter (Cryptographic Service Provider , CSP), der für die Zertifikatüberprüfung verwendet werden soll.
Hinweise
Hinweis
Der cryptdlg.h-Header definiert CERT_SELECT_STRUCT als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Kopfzeile | cryptdlg.h |