IOpcCertificateEnumerator ::GetCurrent, méthode (msopc.h)
Obtient la structure CERT_CONTEXT à la position actuelle de l’énumérateur.
Syntaxe
HRESULT GetCurrent(
[out, retval] const CERT_CONTEXT **certificate
);
Paramètres
[out, retval] certificate
Pointeur vers une structure CERT_CONTEXT . Si la méthode réussit, appelez la fonction CertFreeCertificateContext pour libérer la mémoire de la structure.
Valeur retournée
Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.
Code/valeur de retour | Description |
---|---|
|
S_OK |
|
Le paramètre partReference est NULL. |
|
L’énumérateur n’est pas valide, car le jeu sous-jacent a changé. |
|
L’énumérateur ne peut pas effectuer cette opération à partir de sa position actuelle. |
|
Une relation dont la cible est une partie signature a le mode cible externe ; Les parties de signature doivent se trouver à l’intérieur du package. |
|
Une relation de type certificat de signature numérique a le mode cible externe.
Pour plus d’informations sur ce type de relation, consultez OPC. |
|
Un élément Transform qui indique l’utilisation de la transformation de relations et les critères de sélection de la transformation ne sont pas conformes au schéma spécifié dans l’OPC. |
|
La partie qui contient le certificat et qui est la cible d’une relation de type certificat de signature numérique n’existe pas.
Pour plus d’informations sur ce type de relation, consultez OPC. |
|
L’élément SignatureProperty ne contient pas l’attribut Target requis. |
|
Soit le type de contenu d’une partie diffère du type de contenu attendu (spécifié dans l’OPC, ECMA-376 Partie 2), soit le contenu de la partie ne correspond pas au type de contenu du composant. |
Remarques
Si le certificat représenté par la structure CERT_CONTEXT est endommagé ou n’est pas un certificat X.509, cette méthode retourne une erreur ; en outre, la stratégie de signature utilisée par l’appelant détermine si la signature sera toujours validée. Une fois ce type d’erreur retourné, les appels à la méthode MoveNext ou MovePrevious continuent d’itérer dans l’énumérateur.
Lorsqu’un énumérateur est créé, la position actuelle précède le premier pointeur de l’énumérateur. Pour définir la position actuelle sur le premier pointeur, appelez la méthode MoveNext après la création de l’énumérateur.
Cohérence de thread
Les objets d’empaquetage ne sont pas thread-safe.
Pour plus d’informations, consultez la Prise en main avec l’API Packaging.
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 | msopc.h |
Voir aussi
Principales interfaces d’empaquetage
Vue d’ensemble des signatures numériques
Prise en main avec l’API d’empaquetage
Vues d'ensemble
Guide de programmation d’API d’empaquetage
Informations de référence sur l’API d’empaque
Référence