ICertRequest ::RetrievePending, méthode (certcli.h)
La méthode RetrievePending récupère les status de destruction d’un certificat à partir d’une requête antérieure qui a peut-être précédemment retourné CR_DISP_INCOMPLETE ou CR_DISP_UNDER_SUBMISSION.
Si le status de destruction résultant est CR_DISP_ISSUED, vous pouvez récupérer le certificat émis en appelant ICertRequest3 ::GetCertificate. Si une disposition autre que CR_DISP_ISSUED est retournée, appelez ICertRequest3 ::GetLastStatus, ICertRequest3 ::GetDispositionMessage ou les deux méthodes pour plus d’informations.
Syntaxe
HRESULT RetrievePending(
[in] LONG RequestId,
[in] const BSTR strConfig,
[out, retval] LONG *pDisposition
);
Paramètres
[in] RequestId
ID de la demande qui avait précédemment retourné CR_DISP_INCOMPLETE ou CR_DISP_UNDER_SUBMISSION.
[in] strConfig
Représente une chaîne de configuration valide pour le serveur des services de certificats. La chaîne peut être une URL HTTPS pour un serveur d’inscription ou sous la forme ComputerName\CAName, où ComputerName est le nom réseau du serveur et CAName est le nom commun de l’autorité de certification, tel qu’entré lors de l’installation des services de certificats. Pour plus d’informations sur le nom de la chaîne de configuration, consultez ICertConfig.
Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Une URL HTTPS n’est pas prise en charge en tant qu’entrée.
[out, retval] pDisposition
Pointeur vers la valeur de destruction de la requête.
Valeur retournée
C++
Si la méthode réussit, la méthode retourne S_OK.Une fois cette fonction terminée, *pDisposition est défini sur l’une des valeurs du tableau suivant.
Si la méthode échoue, elle retourne une valeur HRESULT qui indique l’erreur. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.
VB
La valeur de retour spécifie la disposition de la requête. La disposition est l’une des valeurs suivantes.Code de retour | Description |
---|---|
|
La demande n’est pas terminée |
|
Échec de la demande |
|
Demande refusée |
|
Certificat émis |
|
Certificat émis séparément |
|
Demande effectuée sous soumission |
Remarques
Un appel réussi à cette méthode génère un événement EXITEVENT_CERTRETRIEVEPENDING. Un module de sortie actif reçoit une notification de cet événement (au moyen d’un appel à ICertExit3 ::Notify) si le module de sortie a spécifié cet événement lors de l’appel de ICertExit3 ::Initialize.
Exemples
BSTR bstrCA = NULL;
long nReqID, nDisp;
// In this example, the request ID is hard-coded.
nReqID = 1234;
// Note use of two '\' in C++ to produce one '\'.
bstrCA = SysAllocString(L"server01\\myCAName");
// pCertRequest is previously instantiated ICertRequest
// object pointer. Retrieve the status for the specified request.
hr = pCertRequest->RetrievePending( nReqID, bstrCA, &nDisp );
if (FAILED(hr))
{
printf("Failed RetrievePending [%x]\n", hr);
goto error;
}
else
{
// Use the disposition value as needed...
}
// Free BSTR resource.
if ( NULL != bstrCA )
SysFreeString( bstrCA );
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | certcli.h (include Certsrv.h) |
Bibliothèque | Certidl.lib |
DLL | Certcli.dll |