Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Vbs - Gruppenmitgliedschaften eines Users auslesen?

Frage Entwicklung Batch & Shell

Mitglied: AlbertMinrich

AlbertMinrich (Level 2) - Jetzt verbinden

12.02.2012 um 22:13 Uhr, 9025 Aufrufe, 2 Kommentare

Hallo,

ich lese per vbs die Gruppenmitgliedschaften eines Users aus.
Eigentlich so:

01.
Set objitem = GetObject("LDAP://CN=meinuser,OU=meinou,DC=meindomaene,DC=lo") 
02.
 
03.
for each objGroup in objitem.memberof 
04.
	Set objGroup = GetObject("LDAP://" & objGroup) 
05.
	wscript.echo objgroup.cn 
06.
next
Das funktioniert auch, aber nur bei den Usern, die mindestens in zwei Gruppen sind. Ist der User nur in einer, kommt diese Meldung:
"Laufzeitfehler in Microsoft VBScript: Das Objekt ist keine Auflistung"

Bei diesen Usern funktioniert dagegen das hier:
01.
wscript.echo objitem.memberof
Jetzt wiederum kommt dieser Fehler, wenn ein User in mehr als einer Gruppe ist:
"Laufzeitfehler in Microsoft VBScript: Typen unverträglich"

Wie krieg ich vorher raus, in wievielen Gruppen der User ist?
Ich weiss, ich könnte es über "error resume next" und Abfrage der err.number machen, aber schön ist das nicht.

Geht´s anders?

Danke
Gruß
AlbMin
Mitglied: bastla
12.02.2012 um 23:16 Uhr
Hallo AlbertMinrich!

Frag doch vorweg, ob es sich um ein Array handelt:
01.
Set objitem = GetObject("LDAP://CN=meinuser,OU=meinou,DC=meindomaene,DC=lo") 
02.
Groups = objItem.memberof 
03.
 
04.
If IsArray(Groups) Then 
05.
    For Each Group In Groups 
06.
        WScript.Echo GetObject("LDAP://" & Group).cn 
07.
    Next 
08.
Else 
09.
    WScript.Echo GetObject("LDAP://" & Groups).cn 
10.
End If
Andere Ansätze gäbe es noch im Script Center oder bei Richard L Mueller ...

Grüße
bastla
Bitte warten ..
Mitglied: AlbertMinrich
13.02.2012 um 08:52 Uhr
Zitat von bastla:
Hallo AlbertMinrich!

Frag doch vorweg, ob es sich um ein Array handelt:
01.
Set objitem = GetObject("LDAP://CN=meinuser,OU=meinou,DC=meindomaene,DC=lo") 
02.
> Groups = objItem.memberof 
03.
>  
04.
> If IsArray(Groups) Then 
05.
>     For Each Group In Groups 
06.
>         WScript.Echo GetObject("LDAP://" & Group).cn 
07.
>     Next 
08.
> Else 
09.
>     WScript.Echo GetObject("LDAP://" & Groups).cn 
10.
> End If 
11.
> 

Tja, so einfach, wenn mans weiss.
Danke. Funktioniert einwandfrei.

Gruß
AlbMin
Bitte warten ..
Neuester Wissensbeitrag
Microsoft Office

MS Office Excel - Formel wird angezeigt, aber nicht berechneter Wert!

Tipp von holli.zimmi zum Thema Microsoft Office ...

Ähnliche Inhalte
VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Batch & Shell
Eventlog Druckjobs mit VBS auslesen (4)

Frage von joni2000de zum Thema Batch & Shell ...

Entwicklung
Zählerstände über SNMP und VBS auslesen (4)

Frage von motofuzy zum Thema Entwicklung ...

Batch & Shell
gelöst Fenstertitel von anderen Tasks per batch auslesen (3)

Frage von NetMare zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Hyper-V
gelöst Reiner Hyper- V Server oder lieber Rolle (19)

Frage von Winuser zum Thema Hyper-V ...

SAN, NAS, DAS
gelöst Synology Version 6.1 Probleme (17)

Frage von Hendrik2586 zum Thema SAN, NAS, DAS ...

Router & Routing
gelöst IP Kamera für drei unabhängige Netzwerke (15)

Frage von ProfessorZ zum Thema Router & Routing ...

Windows Server
gelöst Rechte als Admin vergeben - Zugriff verweigert (14)

Frage von Ghost108 zum Thema Windows Server ...