Partager via


Propriété de type nom unique avec données binaires (sds)

Les propriétés comme l'attribut wellKnownObjects du schéma Active Directory utilisent le type de syntaxe Object(DN-Binary). Pour plus d'informations sur l'attribut wellKnownObjects ou le type de syntaxe Object(DN-Binary), voir la rubrique sur l'attribut Well-Known-Objects ou sur la syntaxe Object(DN-Binary) dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.

Si une propriété utilisant le type Object(DN-Binary) est obtenue avec la propriété Properties, ce type de données est représenté comme un objet COM accessible avec l'interface IADsDNWithBinary. Pour plus d'informations sur cette interface, consultez la rubrique IADsDNWithBinary dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252 (page pouvant être en anglais). Si une propriété utilisant le type Object(DN-Binary) est obtenue à partir de ResultPropertyValueCollection, ce type de données est représenté comme un objet String contenant le nom unique et les données binaires au format spécifié par la syntaxe Object(DN-Binary).

Les exemples suivants montrent comment lire une propriété dont l'une des valeurs utilise la syntaxe de nom unique avec données binaires.

Imports ActiveDs

Dim wkObjects As [Object] = usr.Properties("wellKnownObjects").Value
Dim wkObject As DNWithBinary
For Each wkObject In  CType(wkObjects, IEnumerable)
    Dim bytes As Byte() = CType(wkObject.BinaryValue, Byte())
    Dim b As Byte
    For Each b In  bytes
        Console.Write("{0:x2}", b)
    Next b
    Console.WriteLine(wkObject.DNString)
 Next wkObject
using ActiveDs;

Object wkObjects = ent.Properties["wellKnownObjects"].Value;
foreach(DNWithBinary wkObject in (IEnumerable) wkObjects)
{
    byte[] bytes= (byte[]) wkObject.BinaryValue;
    foreach(byte b in bytes)
    {
        Console.Write("{0:x2}",b);
    }
    Console.WriteLine(wkObject.DNString);
}

Les exemples suivants montrent comment écrire une valeur de propriété qui utilise la syntaxe de nom unique avec données binaires.

Imports ActiveDs

Dim dnBin As New ActiveDs.DNWithBinaryClass()
dnBin.DNString = usr.Properties("distinguishedName").Value.ToString()
dnBin.BinaryValue = usr.Guid.ToByteArray()
usr.Properties("singleDNWithBinary").Value = dnBin
usr.CommitChanges()
using ActiveDs;

ActiveDs.DNWithBinary dnBin = new ActiveDs.DNWithBinaryClass();
dnBin.DNString = usr.Properties["distinguishedName"].Value.ToString();
dnBin.BinaryValue = usr.Guid.ToByteArray();
usr.Properties["singleDNWithBinary"].Value = dnBin;
usr.CommitChanges();

Voir aussi

Référence

System.DirectoryServices
DirectoryEntry
ResultPropertyValueCollection

Concepts

Types de propriétés

Send comments about this topic to Microsoft.

Copyright © 2007 par Microsoft Corporation. Tous droits réservés.