Partager via


CertSelectionGetSerializedBlob, fonction (cryptuiapi.h)

La fonction CertSelectionGetSerializedBlob est une fonction d’assistance utilisée pour récupérer un objet BLOB de certificat sérialisé à partir d’une structure CERT_SELECTUI_INPUT .

Syntaxe

HRESULT CertSelectionGetSerializedBlob(
  [in]  PCERT_SELECTUI_INPUT pcsi,
  [out] void                 **ppOutBuffer,
  [out] ULONG                *pulOutBufferSize
);

Paramètres

[in] pcsi

Pointeur vers une structure CERT_SELECTUI_INPUT qui contient le magasin de certificats et les informations de chaîne de contexte de certificat.

[out] ppOutBuffer

Adresse d’un pointeur vers une mémoire tampon qui reçoit l’objet BLOB de certificats sérialisés.

[out] pulOutBufferSize

Pointeur vers un ULONG pour recevoir la taille, en octets, de l’objet BLOB reçu dans la mémoire tampon vers laquelle pointe le paramètre ppOutBuffer .

Valeur retournée

Si la fonction réussit, la fonction retourne S_OK.

Si la fonction échoue, elle retourne une valeur HRESULT qui indique l’erreur. Si les paramètres hStore et prgpChain ne sont pas NULL, retournez E_INVALIDARG. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Remarques

L’objet BLOB sérialisé retourné est passé à la fonction CredUIPromptForWindowsCredentials dans le paramètre pvInAuthBuffer pour permettre à un utilisateur de sélectionner un certificat à l’aide de l’interface utilisateur de sélection des informations d’identification.

Les certificats sérialisés dans l’objet BLOB retourné dans la mémoire tampon vers laquelle pointe le paramètre ppOutBuffer de cette fonction dépendent des valeurs des membres hStore et prgpChain de la structure CERT_SELECTUI_INPUT .

hStore prgpChain Certificats sérialisés
NULL non NULL Les certificats pointés par le membre prgpChain sont sérialisés.
non NULL NULL Les certificats spécifiés par le membre hStore sont sérialisés.
NULL NULL Un objet BLOB vide est retourné.
non NULL non NULL L’appel échoue et la fonction retourne E_INVALIDARG.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête cryptuiapi.h
DLL Cryptui.dll