Share via


CRYPTUI_VIEWCERTIFICATE_STRUCTA-Struktur (cryptuiapi.h)

Die CRYPTUI_VIEWCERTIFICATE_STRUCT-Struktur enthält Informationen zu einem anzuzeigenden Zertifikat. Diese Struktur wird in der Funktion CryptUIDlgViewCertificate verwendet.

Syntax

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;

Member

dwSize

Die Größe der CRYPTUI_VIEWCERTIFICATE_STRUCT Struktur in Bytes.

hwndParent

Ein Handle für das Fenster, das das übergeordnete Des Dialogfelds ist, das von CryptUIDlgViewCertificate erstellt wird.

dwFlags

Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.

Wert Bedeutung
CRYPTUI_HIDE_HIERARCHYPAGE
Die Seite Zertifizierungspfad ist deaktiviert.
CRYPTUI_HIDE_DETAILPAGE
Die Seite Details ist deaktiviert.
CRYPTUI_DISABLE_EDITPROPERTIES
Der Benutzer darf die Eigenschaften nicht ändern.
CRYPTUI_ENABLE_EDITPROPERTIES
Der Benutzer darf die Eigenschaften ändern.
CRYPTUI_DISABLE_ADDTOSTORE
Die Schaltfläche Installieren ist deaktiviert.
CRYPTUI_ENABLE_ADDTOSTORE
Die Schaltfläche Installieren ist aktiviert.
CRYPTUI_ACCEPT_DECLINE_STYLE
Die Seiten oder Schaltflächen, die es dem Benutzer ermöglichen, eine Entscheidung zu akzeptieren oder abzulehnen, sind deaktiviert.
CRYPTUI_IGNORE_UNTRUSTED_ROOT
Ein nicht vertrauenswürdiger Stammfehler wird ignoriert.
CRYPTUI_DONT_OPEN_STORES
Bekannte vertrauenswürdige Speicher werden nicht zum Erstellen der Kette verwendet.
CRYPTUI_ONLY_OPEN_ROOT_STORE
Ein bekannter vertrauenswürdiger Stammspeicher wird nicht zum Erstellen der Kette verwendet.
CRYPTUI_WARN_UNTRUSTED_ROOT
Verwenden Sie nur beim Anzeigen von Zertifikaten auf Remotecomputern. Wenn dieses Flag verwendet wird, muss das erste Element von rghStores das Handle des Stammspeichers auf dem Remotecomputer sein.
CRYPTUI_ENABLE_REVOCATION_CHECKING
Aktivieren Sie die Sperrüberprüfung mit Standardverhalten. Das Standardverhalten besteht darin, die Sperrüberprüfung der gesamten Zertifikatkette mit Ausnahme des Stammzertifikats zu aktivieren. Nur gültig, wenn weder der pCryptProviderData noch das hWVTStateData-Unionmitglied übergeben wird.
CRYPTUI_WARN_REMOTE_TRUST
Wenn Sie eine Zertifikatkette für einen Remotecomputer erstellen, warnen Sie, dass die Kette auf dem Remotecomputer möglicherweise nicht vertrauenswürdig ist.
CRYPTUI_DISABLE_EXPORT
Wenn dieses Flag festgelegt ist, wird die Schaltfläche In Datei kopieren auf der Detailseite deaktiviert.
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
Aktivieren Sie die Sperrüberprüfung nur für das Blattzertifikat in der Zertifikatkette. Nur gültig, wenn weder der pCryptProviderData noch das hWVTStateData-Unionmitglied übergeben wird.
CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN
Aktivieren Sie die Sperrüberprüfung für jedes Zertifikat in der Zertifikatkette. Nur gültig, wenn weder der pCryptProviderData noch das hWVTStateData-Unionmitglied übergeben wird.

Hinweis Da Stammzertifikate selten Informationen enthalten, die die Sperrüberprüfung ermöglichen, wird erwartet, dass die Verwendung dieser Option in der Regel zu einem Ausfall der CryptUIDlgViewCertificate-Funktion führt. Die empfohlene Option besteht darin, CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT zu verwenden.

CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
Aktivieren Sie die Sperrüberprüfung für jedes Zertifikat in der Zertifikatkette mit Ausnahme des Stammzertifikats. Dies ist die empfohlene Option für die Zertifikatsperrüberprüfung. Nur gültig, wenn weder der pCryptProviderData noch das hWVTStateData-Unionmitglied übergeben wird.

Hinweis Dieses Flag entspricht CRYPTUI_ENABLE_REVOCATION_CHECKING.

CRYPTUI_DISABLE_HTMLLINK
Deaktivieren Sie die Schaltfläche HTML-Hilfe (?) im Dialogfeld Zertifikat .
CRYPTUI_DISABLE_ISSUERSTATEMENT
Deaktivieren Sie die Schaltfläche Ausstelleranweisung auf der Registerkarte Allgemein des Dialogfelds Zertifikat .
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
Deaktivieren Sie die Online-Sperrüberprüfung. Legen Sie dieses Flag fest, um sicherzustellen, dass die CryptUIDlgViewCertificate-Funktion den lokalen Cache zum Abrufen des Zertifikats verwendet und nicht versucht, das Zertifikat aus dem Netzwerk abzurufen.

Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieses Flag wird nicht unterstützt.

szTitle

Ein Zeiger auf eine NULL-Zeichenfolge, die den Titel für das Fenster enthält.

pCertContext

Ein Zeiger auf die CERT_CONTEXT-Struktur , die den anzuzeigenden Zertifikatkontext enthält.

rgszPurposes

Ein Array von Zeigern auf NULL-beendete Zeichenfolgen, die die Zwecke enthalten, für die dieses Zertifikat überprüft wird.

cPurposes

Die Anzahl der Zwecke im rgszPurposes-Array .

pCryptProviderData

Wenn die WinVerifyTrust-Funktion bereits für das Zertifikat aufgerufen wurde und die FUNKTION WTHelperProvDataFromStateData auch aufgerufen wurde, übergeben Sie einen Zeiger auf die Zustandsstruktur, die aus dem Aufruf von WTHelperProvDataFromStateData abgerufen wurde. Wenn pCryptProviderData festgelegt ist, müssen auch fpCryptProviderDataTrustedUsage, idxSigner, idxCert und fCounterSignature festgelegt werden.

hWVTStateData

Wenn WinVerifyTrust bereits für das Zertifikat aufgerufen wurde und WTHelperProvDataFromStateData nicht aufgerufen wurde, übergeben Sie das hWVTStateData-Element der WINTRUST_DATA-Struktur . Wenn hWVTStateData festgelegt ist, müssen auch fpCryptProviderDataTrustedUsage, idxSigner, idxCert und fCounterSignature festgelegt werden.

fpCryptProviderDataTrustedUsage

Wenn WinVerifyTrust aufgerufen wurde, ist dies das Ergebnis der Vertrauenswürdigkeit des Zertifikats.

idxSigner

Der Index des anzuzeigenden Signaturgebers.

idxCert

Der Index des Zertifikats, das innerhalb der Signerkette angezeigt wird. Der Zertifikatkontext dieses Zertifikats muss mit pCertContext übereinstimmen.

fCounterSigner

TRUE , wenn ein Gegensignatur angezeigt wird. Wenn dies TRUE ist, muss idxCounterSigner gültig sein.

idxCounterSigner

Der Index des anzuzeigenden Countersigners.

cStores

Die Anzahl der anderen Speicher im rghStores-Array von Zertifikatspeichern , die beim Erstellen und Überprüfen der Zertifikatkette gesucht werden sollen.

rghStores

Ein Array von HCERTSTORE verarbeitet andere Zertifikatspeicher, um beim Erstellen und Überprüfen der Zertifikatkette zu suchen.

cPropSheetPages

Die Anzahl der Eigenschaftenseiten, die dem Dialogfeld hinzugefügt werden sollen.

rgPropSheetPages

Ein Array von Eigenschaftenseiten, die dem Dialogfeld hinzugefügt werden sollen. Jede Seite in diesem Array empfängt die lParam in der PROPSHEETPAGE-Struktur nicht als lParam in der WM_INITDIALOG-Nachricht . Stattdessen erhält sie einen Zeiger auf eine CRYPTUI_INITDIALOG_STRUCT-Struktur . Sie enthält den lParam in PROPSHEETPAGE und den Zeiger auf die CERT_CONTEXT , für die die Seite angezeigt wird.

nStartPage

Der Index der anfangs angezeigten Seite. Wenn das höchste Bit (0x8000) festgelegt ist, wird angenommen, dass der Index rgPropSheetPages indiziert (nachdem das höchste Bit entfernt wurde, z. B. gibt 0x8000 die erste Seite in rgPropSheetPages an). Wenn das höchste Bit 0 ist, ist nStartPage der Startindex der Eigenschaftenseiten des Standardzertifikatdialogfelds.

Hinweise

Hinweis

Der Header "cryptuiapi.h" definiert CRYPTUI_VIEWCERTIFICATE_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 cryptuiapi.h

Weitere Informationen

CryptUIDlgViewCertificate