ICEnroll4::createRequest-Methode (xenroll.h)
[Diese Methode steht ab Windows Server 2008 und Windows Vista nicht mehr zur Verfügung.]
Die createRequest-Methode erstellt eine Zertifikatanforderung im PKCS #10-, PKCS #7- oder vollständigen CMC-Format (Certificate Management over CMS) und speichert sie in einer Zeichenfolge. Diese Methode wurde zuerst in der ICEnroll4-Schnittstelle definiert.
Syntax
HRESULT createRequest(
[in] LONG Flags,
[in] BSTR strDNName,
[in] BSTR Usage,
[out] BSTR *pstrRequest
);
Parameter
[in] Flags
Ein Wert, der den Typ der zu erstellenden Zertifikatanforderung angibt. Dies kann einer der folgenden Werte sein.
Wert | Bedeutung |
---|---|
|
Vollständige CMC |
|
PKCS 10 |
|
PKCS 10 Version 2 |
|
PKCS 7 |
[in] strDNName
Dieser Parameter kann NULL sein. Andernfalls gibt dieser Parameter den distinguished Name (DN) der Entität an, für die die Anforderung gestellt wird. Der DN-Name muss der X.500-Benennungskonvention entsprechen, z. B. "CN=User, O=Microsoft". Wenn kein Präfix aus zwei Buchstaben vorhanden ist, kann stattdessen eine OID bereitgestellt werden.
[in] Usage
Ein Objektbezeichner (Object Identifier, OID), der den Zweck des generierten Zertifikats beschreibt, z. B. ein individuelles oder kommerzielles Authenticode-Zertifikat oder die Clientauthentifizierung. Sie können auch mehrere durch ein Komma getrennte OIDs angeben.
[out] pstrRequest
Ein Zeiger auf ein BSTR (BASE64_HEADER Format), das die Anforderung empfängt. Wenn Sie die Verwendung des BSTR abgeschlossen haben, geben Sie ihn frei, indem Sie die SysFreeString-Funktion aufrufen.
Rückgabewert
C++
Wenn die Methode erfolgreich ist, gibt die Methode S_OK zurück.Wenn die Methode fehlschlägt, gibt sie einen HRESULT-Wert zurück, der den Fehler angibt. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.
VB
Der Rückgabewert ist ein String (BASE64_HEADER Format), das die Anforderung enthält.Hinweise
Wenn diese Methode über das Skript aufgerufen wird, zeigt die -Methode eine Benutzeroberfläche an, die fragt, ob der Benutzer die Erstellung einer Zertifikatanforderung zulässt. Wenn eine PVK- oder SPC-Datei angegeben wurde, zeigt die Methode eine Benutzeroberfläche an, die fragt, ob der Benutzer einen Schreibvorgang in das Dateisystem zulässt.
Beispiele
BSTR bstrDN = NULL;
BSTR bstrReq = NULL;
ICEnroll4 * pEnroll4 = NULL;
HRESULT hr;
hr = CoInitializeEx( NULL, COINIT_APARTMENTTHREADED );
if (FAILED(hr))
{
printf("Failed CoInitializeEx - %x\n", hr);
goto error;
}
hr = CoCreateInstance( __uuidof(CEnroll),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(ICEnroll4),
(void **)&pEnroll4);
if (FAILED(hr))
{
printf("Failed CoCreateInstance - pEnroll4 [%x]\n", hr);
goto error;
}
// generate the DN for the cert request
bstrDN = SysAllocString( TEXT("CN=Your Name") // common name
TEXT(",OU=Your Unit") // org unit
TEXT(",O=Your Org") // organization
TEXT(",L=Your City") // locality
TEXT(",S=Your State") // state
TEXT(",C=Your Country") ); // country/region
// create the CMC request
hr = pEnroll4->createRequest( XECR_CMC,
bstrDN,
NULL,
&bstrReq );
if (FAILED(hr))
{
printf("Failed createRequest - pEnroll4 [%x]\n", hr);
goto error;
}
else
// do something with the CMC (bstrReq);
error:
//clean up resources, and so on
if ( bstrDN )
SysFreeString( bstrDN );
if ( bstrReq )
SysFreeString( bstrReq );
if ( pEnroll4 )
pEnroll4->Release();
CoUninitialize();
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | xenroll.h |
Bibliothek | Uuid.lib |
DLL | Xenroll.dll |