Freigeben über


CRYPTUI_VIEWCERTIFICATE_STRUCTW-Struktur (cryptuiapi.h)

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

Syntax

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;

Member

dwSize

Die Größe der CRYPTUI_VIEWCERTIFICATE_STRUCT-Struktur in Bytes.

hwndParent

Ein Handle für das Fenster, das das übergeordnete Dialogfeld 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 kann 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 das pCryptProviderData - noch das hWVTStateData-Union-Element ü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 kopierenauf der Detailseite deaktiviert.
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
Aktivieren Sie die Sperrüberprüfung nur für das untergeordnete Zertifikat in der Zertifikatkette. Nur gültig, wenn weder das pCryptProviderData - noch das hWVTStateData-Union-Element ü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 das pCryptProviderData - noch das hWVTStateData-Union-Element übergeben wird.

Hinweis Da Stammzertifikate selten Informationen enthalten, die eine 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 ist die Verwendung CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT.

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 Überprüfung der Zertifikatsperrung. Nur gültig, wenn weder das pCryptProviderData - noch das hWVTStateData-Union-Element übergeben wird.

Hinweis Dieses Flag entspricht CRYPTUI_ENABLE_REVOCATION_CHECKING.

CRYPTUI_DISABLE_HTMLLINK
Deaktivieren Sie die Html-Hilfeschaltfläche (?) im Dialogfeld Zertifikat .
CRYPTUI_DISABLE_ISSUERSTATEMENT
Deaktivieren Sie die Schaltfläche Issuer Statement auf der Registerkarte Allgemein des Dialogfelds Zertifikat .
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
Deaktivieren Sie die Onlinesperrprü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-endende 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-endende 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 auch die FUNKTION WTHelperProvDataFromStateData aufgerufen wurde, übergeben Sie einen Zeiger auf die Zustandsstruktur, die durch den 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 den hWVTStateData-Member 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 davon, ob das Zertifikat vertrauenswürdig war.

idxSigner

Der Index des signierers, der angezeigt werden soll.

idxCert

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

fCounterSigner

TRUE , wenn eine 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 nicht die lParam in der PROPSHEETPAGE-Struktur als lParam in der WM_INITDIALOG Meldung. Stattdessen wird ein Zeiger auf eine CRYPTUI_INITDIALOG_STRUCT-Struktur empfangen. Sie enthält die lParam in PROPSHEETPAGE und den Zeiger auf die CERT_CONTEXT , für die die Seite angezeigt wird.

nStartPage

Der Index der anfänglichen Seite, die angezeigt wird. 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 Code, der nicht Codierungsneutral ist, 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