Zum Inhalt springen

VBscript: Anzeigen aller Gruppen eines Benutzers im AD


Sandfish

Empfohlene Beiträge

Hallo zusammen,

ich habe folgendes Problem. Mein Auftrag ist es ein VB-Script zu schreiben, das das Active-Directory nach einem angegebenen Benutzerkreis durchsucht und in einem Excel-Sheet die Gruppen in denen die User enthalten sind sowie das Description/Beschreibungsfeld und den Pfad der jeweiligen Gruppe ausgibt.

Bisher ist mein Script soweit:

1. Zu scannede Benutzer über eine Textdatei festlegen

2. Excel-Sheet zur Ausgabe festlegen

3. Ausgabe von DSquery als Textdatei erstellen

4. Textdateien editieren (Umlaute etc.)

5. Dsquery von der Textdatei In ein Excel-Sheet portieren und speichern

6. Dateileichen / DSquery-Textdateien löschen

Ich werde die fertigen Komponenten des Scripts jetzt erstmal nicht posten, da sie mit dem eig. Problem nichts zu tun haben.

Es fehlen noch zwei Dinge:

1. Während das Script läuft sollen nach einigen vom User zu bestätigenden MsgBoxen sämtliche Tastatur- und Mauseingabe gesperrt werden. Soweit ich recherchiert habe funktioniert die BlockInput-Funktion von VB nicht bei VBS. Alternativ könnte man das Script über einen AutoIT-Zugriff sperren. Aber da hier nicht auf jedem Rechner AutoIT installiert ist, wird auch das schwierig. Ich habe von einem Kollegen erfahren, dass man aus AutoIT erstellte Scripte von AutoIT zu .exe-Dateien machen kann um so bespielsweise auch auf Rechnern wo kein AutoIT installiert ist die Tastatur / Mauseingabe sperren kann. Ich nehme allerdings an, dass man VB-Scripte nicht mit AutoIT zu .exe-Dateien mit Eingabesperre machen kann.

Kennt ihr noch eine Möglichkeit wie ich die Eingabesperre verwirklichen kann?

2. Ich bekomme es nicht hin das Description-Feld einer Gruppe auszulesen und in einem Excel-Sheet zu speichern. Ein Kollege hat dies direkt in Excel mit VBA realisiert. Ich möchte es allerdings in meinem bisherigen VBS-Script realisieren.

Hier gibt es bereits ein ähnliches Anliegen auch wenn es dabei um das Description-Feld eines Computers und nicht einer Gruppe geht.

Wenn ich allerdings die dort angegebene Lösung probiere und diese dann mit einer MsgBox ausgeben möchte, ist die Ausgabe leer.

Hier ist mein Versuch mit der oben angegebenen Lösung.

Allerdings kann doch "ADsPath" nicht "Description" enthalten oder?

Ich denke mal nur den Pfad.

On Error Resume Next

strCN = "Gruppenname"

Const ADS_SCOPE_SUBTREE = 2

Set objConnection = CreateObject("ADODB.Connection")

Set objCommand = CreateObject("ADODB.Command")

objConnection.Provider = "ADsDSOObject"

objConnection.Open "Active Directory Provider"

Set objCommand.ActiveConnection = objConnection

objCommand.Properties("Page Size") = 1000

objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE

objCommand.CommandText = _

"SELECT ADsPath FROM 'LDAP://DC=intra,DC=firmenname,DC=de' WHERE Name='" & strCN & "'"

Set objRecordSet = objCommand.Execute

objRecordSet.MoveFirst

strADsPath = objRecordSet.Fields("ADsPath").Value

MsgBox ADSPath

Vielen Dank im Vorraus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...