Goose_Zap Geschrieben 15. Oktober 2010 Geschrieben 15. Oktober 2010 Hallo, Ich hab ein Problem. Ich bin nun schon seit ca. 2 Wochen auf der Suche nach einer Möglichkeit unsere AD in eine Access DB zu importieren. Leider ist dies bis jetzt erfolglos. Hat jemand vielleicht eine gute Lösung für mein Problem ? lg Goose_Zap
erax Geschrieben 15. Oktober 2010 Geschrieben 15. Oktober 2010 brauchst du nur bestimmte daten aus dem ad? dann würde eine abfrage mittels dsquery reichen, die du in eine csv datei schreibst und in access importierst
Goose_Zap Geschrieben 15. Oktober 2010 Autor Geschrieben 15. Oktober 2010 Es wären schon nur bestimmte Daten. Wie wäre das realisierbar mit einer csv Datei und der Import ins Access
erax Geschrieben 15. Oktober 2010 Geschrieben 15. Oktober 2010 habe noch keine AD Daten in eine Accessdatenbank importieren wollen. Aber wenn ich es versuchen würde, würd ich es zunächst so probieren. Abfrage mit dsquery Bspw.: dsquery user -name Theo Test dann würd ichs in eine cvs Datei umleiten >> c:\log.csv und die csv dann mit Access importieren und die Daten zusammenbasteln. Da ich deine Absichten nicht kenne, weiß ich auch nicht ob sowas simples reichen würde.
Goose_Zap Geschrieben 15. Oktober 2010 Autor Geschrieben 15. Oktober 2010 Also es ist so gedacht, dass ich danach ein komplettes Abbild der gesamten AD im Access habe. Ich hätte gerne alle User, PCs, Berechtigungen und ob sie aktiviert sind etc. Am wichtigsten ist aber, dass ich alle User habe, die in den verschiedenen Firmen sind wegen der Monatlichen abrechnung.
Mr.Green Geschrieben 15. Oktober 2010 Geschrieben 15. Oktober 2010 //Using using System.DirectoryServices; string server = "dc=abc,dc=User,dc=local"; //Insert Domain controller server here string adminUser = "Systemtest"; //Insert an admin user account here string adminPass = "DeineMutter18"; //Password for above username DirectoryEntry de = new DirectoryEntry(); //################################################## /// <summary> /// Zeige alle Computer im AD an /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { de.Path = "LDAP://KKS//" + server + ""; de.Username = adminUser; de.Password = adminPass; try { DirectorySearcher ser = new DirectorySearcher(); ser.Filter = "(&ObjectCategory=computer)"; //Only allows Computers to be returned in results. SearchResultCollection results = ser.FindAll(); listBox1.Items.Clear(); foreach (SearchResult res in results) { string[] temp = res.Path.Split(','); //temp[0] would contain the computer name ex: cn=computerName,.. listBox1.Items.Add(temp[0]); //MessageBox.Show((temp[0].Substring(10))); //returns everything after LDAP://CN= until end of temp[0]. } } catch (Exception ex) { Console.WriteLine(ex.ToString()); } finally { de.Dispose();//Clean up resources } } //################################################## /// <summary> /// Zeige alle User im AD an /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button2_Click(object sender, EventArgs e) { de.Path = "LDAP://" + server + ""; de.Username = adminUser; de.Password = adminPass; try { DirectorySearcher ser = new DirectorySearcher(); ser.Filter = "(&ObjectCategory=User)"; //Only allows User to be returned in results. --- "(&(objectClass=user))" SearchResultCollection results = ser.FindAll(); listBox1.Items.Clear(); foreach (SearchResult res in results) { string[] temp = res.Path.Split(','); //temp[0] would contain the computer name ex: cn=computerName,.. listBox1.Items.Add(temp[0]); //MessageBox.Show((temp[0].Substring(10))); //returns everything after LDAP://CN= until end of temp[0]. } } catch (Exception ex) { Console.WriteLine(ex.ToString()); } finally { de.Dispose();//Clean up resources } } //################################################## Die 2 Methoden fragen die User und PC´s im AD ab, und zeigen Sie in ner Listbox an. LG
Goose_Zap Geschrieben 15. Oktober 2010 Autor Geschrieben 15. Oktober 2010 Jetzt hab ich nur noch ein Problem ! Wie kriege ich das zum laufen ? Ich hab sozusagen keine C# Kenntnisse. Wenn es C++ oder VB währe würde ich es zum laufen bringen. Ich benutze Microsoft Visual C# 2010. Es ist eine bescheuerte Frage aber könntest du mir helfen ?
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden