Partager via


Méthode IAlternativeName ::InitializeFromOtherName (certenroll.h)

La méthode InitializeFromOtherName initialise l’objet à partir d’un identificateur d’objet (OID) et des données brutes associées (tableau d’octets). Cette méthode est fournie pour prendre en charge le champ otherName dans la déclaration d’extension AsN.1 ( Abstract Syntax Notation One ) AlternativeNames .


----------------------------------------------------------------------
-- AlternativeNames 
-- XCN_OID_SUBJECT_ALT_NAME2 (2.5.29.17)
----------------------------------------------------------------------

AltNames ::= SEQUENCE --#public-- OF GeneralName
GeneralNames ::= AltNames

GeneralName ::= CHOICE 
{
   otherName               [0] IMPLICIT OtherName,
   rfc822Name              [1] IMPLICIT IA5STRING,
   dNSName                 [2] IMPLICIT IA5STRING,
   x400Address             [3] IMPLICIT SeqOfAny,       -- Not supported
   directoryName           [4] EXPLICIT ANY,    
   ediPartyName            [5] IMPLICIT SeqOfAny,
   uniformResourceLocator  [6] IMPLICIT IA5STRING,
   iPAddress               [7] IMPLICIT OCTETSTRING,
   registeredID            [8] IMPLICIT EncodedObjectID -- Not supported
}

OtherName ::= SEQUENCE 
{
   type                    EncodedObjectID,
   value                   [0] EXPLICIT NOCOPYANY 
}

Syntaxe

HRESULT InitializeFromOtherName(
  [in] IObjectId    *pObjectId,
  [in] EncodingType Encoding,
  [in] BSTR         strRawData,
  [in] VARIANT_BOOL ToBeWrapped
);

Paramètres

[in] pObjectId

Pointeur vers une interface IObjectId qui représente un OID.

[in] Encoding

Valeur d’énumération EncodingType qui identifie le type d’encodage Unicode appliqué au paramètre strRawData .

[in] strRawData

Variable BSTR qui contient le nom associé à l’OID.

[in] ToBeWrapped

Variable VARIANT_BOOL qui identifie si la chaîne d’entrée contenue dans le paramètre strRawData est encodée et enregistrée en tant que chaîne d’octets (tableau d’octets).

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. Les valeurs possibles sont notamment celles figurant dans le tableau suivant. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Code/valeur de retour Description
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
L’objet est déjà initialisé.

Remarques

Vous pouvez utiliser cette fonction pour initialiser un objet IAlternativeName à partir d’un OID et d’une valeur de chaîne associée. La chaîne est encodée en Unicode. Si vous spécifiez true pour le paramètre ToBeWrapped, la chaîne est encodée à l’aide de Distinguished Encoding Rules (DER). Vous pouvez récupérer l’OID en appelant la propriété ObjectId . Vous pouvez récupérer la chaîne encodée ou, si ToBeWrapped a la valeur true, le tableau d’octets encodé en DER en appelant la propriété RawData pour récupérer le tableau d’octets encodé.

Configuration requise

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

Voir aussi

IAlternativeName