Método ICertServerPolicy::GetRequestAttribute (certif.h)

O método GetRequestAttribute retorna um atributo nomeado de uma solicitação.

Sintaxe

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

Parâmetros

[in] strAttributeName

O nome do atributo a ser recuperado.

[out] pstrAttributeValue

Um ponteiro para um valor BSTR que conterá o valor do atributo.

Retornar valor

C++

Se o método for bem-sucedido, o método retornará S_OK e *pstrAttributeValue será definido como o BSTR que contém o valor do atributo.

Para usar esse método, crie uma variável do tipo BSTR, defina a variável igual a NULL e passe o endereço dessa variável como pstrAttributeValue.

Quando terminar de usar o BSTR, libere-o chamando a função SysFreeString .

Se o método falhar, ele retornará um valor HRESULT que indica o erro. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.

VB

O valor retornado é uma cadeia de caracteres que representa o valor do atributo.

Comentários

Você deve chamar ICertServerPolicy::SetContext antes de usar esse método.

Os atributos de solicitação a seguir são exclusivos para solicitações de estilo KEYGEN.

Nome da propriedade Type Descrição
Desafio Cadeia de caracteres Cadeia de caracteres de desafio que acompanha a solicitação.
ExpectedChallenge Cadeia de caracteres Se a cadeia de caracteres de desafio estiver incorreta, o servidor definirá o valor desse atributo de solicitação para o desafio esperado para que a falha possa ser diagnosticada.
 

Exemplos

BSTR     bstrAttribValue = NULL;
HRESULT  hr;

// Get the request attribute.
// bstrAttribName is BSTR assigned by EnumerateAttributes.
// pCertServerPolicy has been used to call SetContext previously.
hr = pCertServerPolicy->GetRequestAttribute(bstrAttribName,
                                            &bstrAttribValue);

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

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

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

Requisitos

Requisito Valor
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho certif.h (inclua Certsrv.h)
Biblioteca Certidl.lib
DLL Certcli.dll

Confira também

ICertServerPolicy

ICertServerPolicy::SetContext