Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Initialize-Methode initialisiert das Objekt aus einem Signaturzertifikat.
Syntax
HRESULT Initialize(
[in] VARIANT_BOOL MachineContext,
[in] X509PrivateKeyVerify VerifyType,
[in] EncodingType Encoding,
[in] BSTR strCertificate
);
Die Parameter
[in] MachineContext
Eine VARIANT_BOOL Variable, die angibt, ob der Kontext des lokalen Computerzertifikatspeichers oder der Benutzerkontext durchsucht werden soll, um das vom strCertificate-Parameter identifizierte Zertifikat zu finden. Geben Sie VARIANT_TRUE für den Computer und VARIANT_FALSE für den Benutzer an.
[in] VerifyType
Ein X509PrivateKeyVerify-Enumerationswert , der angibt, ob der private Schlüssel, der zum Signieren des Zertifikats verwendet wird, überprüft werden muss, und wenn ja, ob die Überprüfung im Hintergrund ausgeführt werden muss oder Benutzereingaben zulässt.
[in] Encoding
Ein EncodingType-Enumerationswert , der den Typ der Unicode-Codierung angibt, die auf die distinguished Encoding Rules (DER) codierte Zertifikatzeichenfolge angewendet wird.
[in] strCertificate
Eine BSTR-Variable , die das DER-codierte Zertifikat enthält.
Ab Windows 7 und Windows Server 2008 R2 können Sie einen Zertifikatfingerabdruck oder eine Seriennummer anstelle eines codierten Zertifikats angeben. Dies bewirkt, dass die Funktion die entsprechenden lokalen Speicher nach dem übereinstimmenden Zertifikat durchsucht. Berücksichtigen Sie dabei Folgendes:
- Der BSTR muss eine gerade Anzahl hexadezimaler Ziffern sein.
- Leerzeichen zwischen hexadezimalen Paaren werden ignoriert.
- Der Codierungsparameter muss auf XCN_CRYPT_STRING_HEXRAW festgelegt werden.
- Der Parameter MachineContext bestimmt, ob der Benutzer oder computerspeichert oder beides durchsucht werden.
- Wenn ein privater Schlüssel benötigt wird, werden nur die persönlichen Speicher und Anforderungsspeicher durchsucht.
- Wenn kein privater Schlüssel benötigt wird, werden auch die Stamm- und Zwischenspeicher der Zertifizierungsstelle durchsucht.
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 |
|---|---|
|
Das ISignerCertificate-Objekt wurde bereits initialisiert. |
Bemerkungen
Die Initialize-Methode:
- Überprüft, ob der dem Zertifikat zugeordnete private Schlüssel vorhanden ist.
- Erstellt ein IX509SignatureInformation -Objekt und weist es dem ISignerCertificate -Objekt zu.
- Ruft den Algorithmus für öffentliche Schlüssel aus dem privaten Schlüssel ab.
- Weist dem IX509SignatureInformation -Objekt den Algorithmus für öffentliche Schlüssel zu.
Legen Sie die folgenden Eigenschaften fest, bevor Sie Initialize aufrufen:
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 |