Code-Beispiel

Benutzerdaten ändern

Ein Beispiel zum Einsatz der Klasse System.DirectoryServices.DirectoryEntry aus der .NET-Klassenbibliothek.

Autor: Dr. Holger Schwichtenberg

Beschreibung

Nach der Bindung eines Benutzer-Objekts kann über die Klasse DirectoryEntry auch schreibend auf die Attribute zugegriffen werden. Zu beachten ist dabei, dass Attribute, die bereits einen Wert besitzen, anders zu behandeln sind als solche, die noch keinen Wert besitzen. Wie bereits in den allgemeinen Programmiertechniken in diesem Kapitel beschrieben, kann dies umgangen werden, indem die PropertyValueCollection vor dem Beschreiben mit Clear() gelöscht wird.

Beispiel
Im folgenden Beispiel wird die Stadt des Benutzers "H.Schwichtenberg" geändert.

Programmcodebeispiele Visual Basic .NET (VB.NET)

' ============================
' .NET-Code-Beispiel in Visual Basic .NET
' Benutzerdaten ändern
' (C) Holger@Schwichtenberg.de
' ============================
Sub ADSBenutzeraendern()

Dim o As DirectoryEntry
Dim p As PropertyValueCollection
out("# Ändern des Benutzers: " & LDAPhs)

' --- Zugriff auf Eintrag
o = New DirectoryEntry(LDAPhs)
' --- Zugriff auf Attribut
p = o.Properties("l")
' --- bisherigen Eintrag löschen
p.Clear()
' --- Stadt neu eintragen
p.Add("Essen")
' --- Änderungen speichern
o.CommitChanges()

End Sub

Programmcodebeispiele CSharp (C#)

using System;
using System.DirectoryServices;
using ActiveDs;

namespace FCLBuch._SystemDirectoryServices {

public class Samples_ADSI {
public void ADSBenutzeraendern() {

// Benutzerdaten ändern
FclOutput.PrintOut("# Ändern des Benutzers: " + LDAPhs);

// Zugriff auf Eintrag
DirectoryEntry o = new DirectoryEntry(LDAPhs);
// Zugriff auf Attribut
PropertyValueCollection p = o.Properties["l"];
// bisherigen Eintrag löschen
p.Clear();
// Stadt neu eintragen
p.Add("Essen");
// Änderungen speichern
o.CommitChanges();
}
}
}

Hinweise

Ausgaben werden in den Beispielen durch Hilfsroutinen wie out() und PrintOut() erzeugt. Diese sind hier nicht angegeben, da deren Implementierung von der jeweiligen Umgebung abhängt. Für Konsolenanwendungen können hier z.B. Console.WriteLine() einsetzen.


 

Querverweise

 Liste aller Codebeispiele  Definition '.NET Framework Class Library'  Verfügbarkeit der Klasse 'System.DirectoryServices.DirectoryEntry'  Übersicht über den FCL-Namensraum 'System.DirectoryServices'  .NET & Visual Studio Community Portal

Buchtipp

Buchcover PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch (5. Auflage Oktober 2022 (9. Auflage Gesamtreihe)) PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch
Autor(en): Dr. Holger Schwichtenberg
Erschienen 2022
Umfang: 1426 Seiten
ISBN: 3446472967

Beratung & Support

Schulungen zu diesem Thema

  Anfrage für eine individuelle Schulung zum Thema VISUAL BASIC C#   Gesamter Schulungsthemenkatalog

Bücher zu diesem Thema

  Alle unsere aktuellen Fachbücher   E-Book-Abo für ab 99 Euro im Jahr