Freigeben über


IX509CertificateRequestPkcs7::InitializeDecode-Methode (certenroll.h)

Die InitializeDecode-Methode decodiert ein vorhandenes signiertes oder nicht signiertes PKCS #7-Anforderungsobjekt und verwendet es zum Initialisieren des neuen PKCS #7-Objekts. Die vorhandene Anforderung ist in einem Bytearray enthalten, das mithilfe von Distinguished Encoding Rules (DER) codiert wurde, wie durch den Standard " Abstrakte Syntax Notation One (ASN.1)" definiert. Das Bytearray wird durch eine Zeichenfolge dargestellt, die entweder eine reine binäre Sequenz ist oder Unicode-codiert ist.

Syntax

HRESULT InitializeDecode(
  [in] BSTR         strEncodedData,
  [in] EncodingType Encoding
);

Die Parameter

[in] strEncodedData

Eine BSTR-Variable , die die DER-codierte Anforderung enthält.

[in] Encoding

Ein EncodingType-Enumerationswert , der den Typ der Unicode-Codierung angibt, die auf die Eingabezeichenfolge angewendet wird, die die DER-codierte Anforderung enthält. Der Standardwert ist XCN_CRYPT_STRING_BASE64.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.

Wenn die Funktion fehlschlägt, wird ein HRESULT-Wert zurückgegeben, der den Fehler angibt. Mögliche Werte sind die Werte in der folgenden Tabelle, sind jedoch nicht beschränkt. Eine Liste allgemeiner Fehlercodes finden Sie unter "Allgemeine HRESULT-Werte".

Zurückgeben von Code/Wert Description
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
Das Anforderungsobjekt wurde bereits initialisiert.

Bemerkungen

Die InitializeDecode-Methode :

Standardmäßig geht die InitializeDecode-Methode davon aus, dass die zu decodierende Zertifikatanforderung für einen Endbenutzer gilt. Ab Windows 8 und Windows Server 2012 können Sie dieses Standardverhalten ändern. Rufen Sie nach dem Erstellen einer Instanz der IX509CertificateRequestPkcs7-SchnittstelleInitializeDecode auf, indem Sie den Encoding-Parameter auf XCN_CRYPT_STRING_BINARY und den strEncodedData-Parameter auf einen der folgenden Werte festlegen:

Wert Description
L"ContextMachine" Die codierte Zertifikatanforderung ist für einen Computer vorgesehen.
L"ContextUser" Die codierte Zertifikatanforderung ist für einen Endbenutzer vorgesehen.
L"ContextAdministratorForceMachine" Das codierte Zertifikat wird von einem Administrator angefordert, der im Namen eines Computers fungiert.
 

Rufen Sie dann die InitializeDecode-Methode erneut mit dem codierten Zertifikatsatz im Argument strEncodedData auf.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows Vista [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2008 [Nur Desktop-Apps]
Zielplattform Fenster
Header certenroll.h
DLL CertEnroll.dll

Siehe auch

IX509CertificateRequestPkcs7