ICertProperty::InitializeFromCertificate-Methode (certenroll.h)
Die InitializeFromCertificate-Methode initialisiert das Objekt mithilfe eines Eigenschaftswerts, der einem vorhandenen Zertifikat zugeordnet ist.
Syntax
HRESULT InitializeFromCertificate(
[in] VARIANT_BOOL MachineContext,
[in] EncodingType Encoding,
[in] BSTR strCertificate
);
Parameter
[in] MachineContext
Ein VARIANT_BOOL Wert, der angibt, ob der Zertifikatspeicher für den lokalen Computer oder den aktuellen Benutzer bestimmt ist. Geben Sie VARIANT_TRUE für den Computer und VARIANT_FALSE für den Benutzer an.
[in] Encoding
Ein EncodingType-Enumerationswert , der den Typ der Unicode-Codierung angibt, die auf das Zertifikat angewendet wird, das im strCertificate-Parameter enthalten ist.
[in] strCertificate
Eine BSTR-Variable , die das DER-codierte Zertifikat enthält.
Ab Windows 7 und Windows Server 2008 R2 können Sie anstelle eines codierten Zertifikats einen Zertifikatfingerabdruck oder eine Seriennummer 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 von Hexadezimalstellen sein.
- Leerzeichen zwischen hexadezimalen Paaren werden ignoriert.
- Der Encoding-Parameter muss auf XCN_CRYPT_STRING_HEXRAW festgelegt werden.
- Der MachineContext-Parameter bestimmt, ob der Benutzer oder der Computer speichert oder beides durchsucht wird.
- Wenn ein privater Schlüssel benötigt wird, werden nur die persönlichen Speicher und die 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ögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.
Rückgabecode/-wert | BESCHREIBUNG |
---|---|
|
Das Zertifikat konnte nicht gefunden werden. |
|
Das Zertifikat wurde gefunden, aber der private Schlüssel konnte nicht geladen werden. |
Hinweise
Geben Sie die zu initialisierende Eigenschaft an, indem Sie die PropertyId-Eigenschaft aufrufen. Sie können die RawData-Eigenschaft aufrufen, um eine codierte Zeichenfolge abzurufen, die die -Eigenschaft enthält.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | certenroll.h |
DLL | CertEnroll.dll |