Appel des propriétés de l'interface ADSI
Vous pouvez accéder directement aux propriétés d'un objet COM ADSI de deux façons. La première consiste à utiliser la méthode InvokeMember. La seconde consiste à utiliser les méthodes InvokeGet et InvokeSet, qui sont des nouvelles méthodes avec Microsoft .NET Framework version 2.0.
L'exemple C# suivant montre comment utiliser la méthode InvokeMember pour récupérer les propriétés IADSUser, FirstName et LastName à partir d'une application à code managé. Pour plus d'informations sur ces propriétés, voir les rubriques « IADsUser », « FirstName » et « LastName » dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.
using System.Reflection;
using System.DirectoryServices;
DirectoryEntry ent = new DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com");
Object ads = ent.NativeObject;
Type type = ads.GetType();
String firstName = (string)type.InvokeMember(
"FirstName",
BindingFlags.GetProperty,
null,
ads,
null);
String lastName = (string)type.InvokeMember(
"LastName",
BindingFlags.GetProperty,
null,
ads,
null);
L'exemple Visual Basic suivant montre comment utiliser la méthode InvokeMember pour récupérer les propriétés IADSUser, FirstName et LastName à partir d'une application à code managé. Pour plus d'informations sur ces propriétés, voir les rubriques « IADsUser », « FirstName » et « LastName » dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.
Imports System.Reflection
Imports System.DirectoryServices
Dim ent As New DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com")
Dim ads As [Object] = ent.NativeObject
Dim type As Type = ads.GetType()
Dim firstName As String = CStr(type.InvokeMember( _
"FirstName", _
BindingFlags.GetProperty, _
Nothing, _
ads, _
Nothing))
Dim lastName As String = CStr(type.InvokeMember( _
"LastName", _
BindingFlags.GetProperty, _
Nothing, _
ads, _
Nothing))
L'exemple C# suivant montre comment utiliser la méthode InvokeGet pour récupérer les propriétés IADSUser, FirstName et LastName à partir d'une application à code managé. Pour plus d'informations sur ces propriétés, voir les rubriques « IADsUser », « FirstName » et « LastName » dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.
.
using System.DirectoryServices;
DirectoryEntry ent = new DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com");
String firstName = (string)ent.InvokeGet("FirstName");
String lastName = (string)ent.InvokeGet("LastName");
L'exemple Visual Basic suivant montre comment utiliser la méthode InvokeGet pour récupérer les propriétés IADSUser, FirstName et LastName à partir d'une application à code managé. Pour plus d'informations sur ces propriétés, voir les rubriques « IADsUser », « FirstName » et « LastName » dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.
Imports System.DirectoryServices
Dim ent As New DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com")
Dim firstName As String = CStr(ent.InvokeGet("FirstName"))
Dim lastName As String = CStr(ent.InvokeGet("LastName"))
L'exemple C# suivant montre comment utiliser la méthode InvokeMember pour définir la propriété Description d'un objet.
using System.Reflection;
using System.DirectoryServices;
DirectoryEntry ent = new DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com");
Object ads = ent.NativeObject;
Type type = ads.GetType();
type.InvokeMember("Description",
BindingFlags.SetProperty,
null,
ads,
new object[] {"some description"});
// The changes to the object must always be committed or else they
// will be lost.
ent.CommitChanges();
L'exemple Visual Basic suivant montre comment définir la propriété Description d'un objet en utilisant la méthode InvokeMember.
Imports System.Reflection
Imports System.DirectoryServices
Dim ent As New DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com")
Dim ads As [Object] = ent.NativeObject
Dim type As Type = ads.GetType()
type.InvokeMember("Description", _
BindingFlags.SetProperty, _
Nothing, _
ads, _
New Object() {"some description"})
' The changes to the object must always be committed or else they
' will be lost.
ent.CommitChanges()
L'exemple C# suivant montre comment définir la propriété Description d'un annuaire en utilisant la méthode InvokeSet. Pour plus d'informations sur la propriété Description, voir la rubrique « Description » dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.
using System.DirectoryServices;
DirectoryEntry ent = new DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com");
ent.InvokeSet("Description", new object[] {"some description"});
// The changes to the object must always be committed or else they
// will be lost.
ent.CommitChanges();
L'exemple Visual Basic suivant montre comment définir la propriété Description d'une entrée d'annuaire en utilisant la méthode InvokeSet. Pour plus d'informations sur la propriété Description, voir la rubrique « Description » dans MSDN Library à l'adresse https://go.microsoft.com/fwlink/?LinkID=27252.
Imports System.DirectoryServices
Dim ent As New DirectoryEntry("LDAP://CN=My User,DC=Fabrikam,DC=com")
ent.InvokeSet("Description", New Object() {"some description"})
' The changes to the object must always be committed or else they
' will be lost.
ent.CommitChanges()
Voir aussi
Référence
System.DirectoryServices
DirectoryEntry
Type
Concepts
Send comments about this topic to Microsoft.
Copyright © 2007 par Microsoft Corporation. Tous droits réservés.