IX509CertificateTemplateWritable::Commit-Methode (certenroll.h)
Die Commit-Methode löscht eine Vorlage aus oder speichert sie in Active Directory.
Syntax
HRESULT Commit(
[in] CommitTemplateFlags commitFlags,
[in] BSTR strServerContext
);
Parameter
[in] commitFlags
Ein CommitTemplateFlags-Enumerationswert , der angibt, wie die Vorlage gespeichert oder gelöscht werden soll. Dies muss einer der folgenden Werte sein.
[in] strServerContext
Eine BSTR-Variable , die den DNS-Namen des Active Directory-Servers enthält, auf den die Änderungen angewendet werden. Wenn dieser Wert NULL ist, werden die Änderungen auf den Standarddomänencontroller angewendet.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.
Wenn die Funktion fehlschlägt, gibt sie einen HRESULT-Wert zurück, 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 | Beschreibung |
---|---|
|
CommitFlagSaveTemplateGenerateOID wurde im commitFlags-Argument angegeben, aber eine Vorlage mit einem übereinstimmenden allgemeinen Namen oder einem übereinstimmenden Objektbezeichner (OID) ist bereits vorhanden. |
|
CommitFlagDelete wurde im commitFlags-Argument angegeben, und es wurde eine Vorlage mit dem gleichen allgemeinen Namen gefunden, aber die OID stimmte nicht überein. |
|
Der Aufrufer verfügt nicht über die entsprechende Berechtigung zum Speichern oder Löschen einer Vorlage. Der Aufrufer muss über die Schreib- und Löschberechtigung für den Vorlagencontainer und die Vorlagenobjekte in Active Directory verfügen. Wenn der Aufrufer über die Löschberechtigung für den Vorlagencontainer und die Objekte verfügt, aber nicht über die Löschberechtigung für den OID-Container und die -Objekte verfügt, wird die Vorlage gelöscht, die OID jedoch nicht. |
|
Entweder CommitFlagSaveTemplateUseCurrentOID oder CommitFlagSaveTemplateOverwrite wurde im commitFlags-Argument angegeben. Diese Werte werden derzeit nicht verwendet. |
|
CommitFlagDelete wurde im commitFlags-Argument angegeben, aber eine Vorlage mit einem übereinstimmenden Common Name (CN) konnte nicht gefunden werden. |
|
Die Commit-Methode wird für Standardvorlagen nicht unterstützt. |
|
Das IX509CertificateTemplateWritable-Objekt wurde nicht initialisiert. |
Hinweise
Wenn CommitFlagSaveTemplateGenerateOID im commitFlags-Argument angegeben wird, ist diese Methode nur erfolgreich, wenn die Vorlagen- und OID-Container bereits erstellt wurden. Diese Container können auf eine der folgenden Arten erstellt werden:
- Installieren einer Unternehmenszertifizierungsstelle auf dem Server.
- Starten des Certtmpl.msc-Snap-Ins.
- Verwenden Sie den Certutil.exe -installDefaultTemplates-Befehl , um die Standardvorlagen zu installieren.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | certenroll.h |