Partager via


ICertServerExit ::GetRequestAttribute, méthode (certif.h)

La méthode GetRequestAttribute retourne une valeur d’attribut nommé à partir d’une requête.

Avant d’appeler cette méthode, il est nécessaire d’appeler ICertServerExit ::SetContext.

Syntaxe

HRESULT GetRequestAttribute(
  [in]  const BSTR strAttributeName,
  [out] BSTR       *pstrAttributeValue
);

Paramètres

[in] strAttributeName

Nom de l’attribut à récupérer.

[out] pstrAttributeValue

Pointeur vers une valeur BSTR qui contiendra la valeur d’attribut.

Valeur retournée

C++

Si la méthode réussit, la méthode retourne S_OK, et *pstrAttributeValue est défini sur le BSTR qui contient la valeur d’attribut.

Pour utiliser cette méthode, créez une variable de type BSTR, définissez la variable sur NULL et transmettez l’adresse de cette variable en tant que pstrAttributeValue.

Lorsque vous avez terminé d’utiliser le BSTR, libérez-le en appelant la fonction SysFreeString .

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 est une chaîne qui représente la valeur d’attribut.

Remarques

Vous devez appeler ICertServerExit ::SetContext avant d’utiliser cette méthode.

Les attributs de requête suivants sont propres aux demandes de style KEYGEN.

Nom de la propriété Type Description
Problème Chaîne Chaîne de défi qui accompagne la demande.
ExpectedChallenge Chaîne Si la chaîne de requête est incorrecte, le serveur définit la valeur de cet attribut de requête sur la requête attendue afin que l’échec puisse être diagnostiqué.
 

Exemples

BSTR       bstrAttribValue = NULL;
HRESULT    hr;

// Get the request attribute.
// bstrAttribName is a BSTR assigned by EnumerateAttributes.
// Also, ICertServerExit::SetContext has already been
// called by pCertServerExit.
hr = pCertServerExit->GetRequestAttribute(bstrAttribName,
                                          &bstrAttribValue);

if (FAILED(hr))
{
    printf("Failed GetRequestAttribute [%x]\n", hr);
    goto error;
}
else
{

    // Successful call. Use bstrAttribValue as needed.
    // ...
}

// Done processing. Free BSTR.
if (NULL != bstrAttribValue)
    SysFreeString(bstrAttribValue);

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête certif.h (include Certsrv.h)
Bibliothèque Certidl.lib
DLL Certcli.dll

Voir aussi

ICertServerExit

ICertServerExit ::SetContext