Top-Themen

Aktuelle Themen (A bis Z)

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

VBScript, Active Directory User Properties auslesen

Frage Entwicklung VB for Applications

Mitglied: tschini

tschini (Level 1) - Jetzt verbinden

31.03.2008, aktualisiert 28.04.2008, 22833 Aufrufe, 5 Kommentare

Ich muss mit VBS einige Optionen von Benutzern auslesen. Die einzelnen Attribute (z.B. AccountDisabled, givenname etc.) such ich mir mit dem ADSI Edit Raus.

Die meisten Attribute funktionieren. Mit dem Attribut proxyAddresses bekommt man die E-Mail Adresse sowie deren Aliases zurück. Jedoch haben eineige Account's kein E-Mail Adresse was zu einem Error führt. Deshalb will die zuerst mit einer "IF" Abfrage abfragen, ob überhaupt etwas vorhanden ist. Wenn nichts gesetzt ist, steht im ADSI Edit "<Not Set>". Wie kann ich abfragen ob dem so ist, hab schon null, emptyornull, "" etc. versucht, jedoch kommt bei diesen immer "Type mismatch". Kann mit jemand dabei Helfen?
Mitglied: TuXHunt3R
01.04.2008 um 13:06 Uhr
Poste doch mal deinen Code, dann sehen wir weiter.
Bitte warten ..
Mitglied: tschini
02.04.2008 um 10:09 Uhr
01.
 
02.
OPTION EXPLICIT 
03.
 
04.
Dim objDSE 
05.
Dim strAdPfad 
06.
Dim objWF 
07.
Dim objFile 
08.
Dim objLdapConnection 
09.
Dim objAdObject 
10.
Dim strsollname 
11.
Dim intgesamt 
12.
Dim intneu 
13.
Dim strAdresses 
14.
Dim strPEMail 
15.
Dim strNewName 
16.
 
17.
intgesamt = 0 
18.
intneu = 0 
19.
 
20.
Set objDSE = GetObject("LDAP://rootDSE") 
21.
Set objWF = CreateObject("Scripting.FileSystemObject") 
22.
 
23.
Set objFile = objWF.CreateTextFile("C:/Documents and Settings/User/Desktop/Change Display Name/Test.txt", True) 
24.
 
25.
strAdPfad = "ou=Users," & objDSE.Get("defaultNamingContext") 
26.
 
27.
Set objLdapConnection = GetObject("LDAP://" & strAdPfad) 
28.
 
29.
For Each objAdObject In objLdapConnection 
30.
	Select Case objAdObject.Class 
31.
	Case "user" 
32.
		If objAdObject.AccountDisabled = FALSE Then 
33.
			strPEMail = "" 
34.
			On error Resume Next 
35.
			For Each strAdresses In objAdObject.proxyAddresses 
36.
				If instr(1,strAdresses,"SMTP") Then 
37.
					strPEMail = Replace(strAdresses,"SMTP:","") 
38.
				End If 
39.
			Next 
40.
			strsollname = objAdObject.sn & " " & objAdObject.givenname & " (" & strPEMail & ")"  
41.
			intgesamt = intgesamt + 1 
42.
			If objAdObject.displayname = strsollname Then 
43.
				WScript.echo objAdObject.samaccountname & " in Ordnung" 
44.
			Else 
45.
				WScript.echo objAdObject.samaccountname & " geändert" 
46.
				If strPEMail = "" Then 
47.
					strNewName = objAdObject.sn & " " & objAdObject.givenname 
48.
				Else 
49.
					strNewName = objAdObject.sn & " " & objAdObject.givenname & " (" & strPEMail & ") " 
50.
				End If 
51.
				objFile.WriteLine objAdObject.samaccountname & vbTab & objAdObject.displayname & vbTab & strNewName 
52.
				objAdObject.displayname = strNewName 
53.
				objAdObject.setinfo 
54.
				intneu = intneu + 1 
55.
			End If 
56.
		End If 
57.
	End Select 
58.
Next 
59.
objFile.Close 
60.
Set objWF = Nothing 
61.
WScript.echo "Neu geschrieben: " & intneu & " Gesamt: " & intgesamt 
62.
 
Ich umgehe das Problem jetzt mit "On error Resume Next", jedoch ignoriert dies einfach den Error. Funkioniert, ist jedoch nicht ganz sauber. Deshalb wüsst ich gerne den return Typ von "objAdObject.proxyAddresses" damit ich mit einer IF Abfrage abfragen kann, ob diese nichts enthält.
Bitte warten ..
Mitglied: TuXHunt3R
02.04.2008 um 20:39 Uhr
Fass den Code in Codeformatierungsblöcke.

Hier steht wies geht:
http://www.administrator.de/index.php?faq=20#toc26

Mit "Editieren" kannst du einen Beitrag nachträglich ändern
Bitte warten ..
Mitglied: lifeadmin
28.04.2008 um 10:52 Uhr
Versuchs mal den Fehler mit folgendem abzufangen:

try {

}

catch (ex as exception) {

console.writline (ex.tostring)

}
Bitte warten ..
Mitglied: n4426
22.06.2011 um 22:28 Uhr
Hi tschini,

da die Frage ja als gelöst makiert ist, wollte ich mal fragen, wie du das Problem jetzt gelöst hast? Hab das gleiche Problem (nur mit einem andern Attributt).

mfg
n4426
Bitte warten ..
Ähnliche Inhalte
Windows Userverwaltung
"Tote" User im Active Directory auslesen, deaktivieren und verschieben
gelöst Frage von XxDarkAngelxXWindows Userverwaltung3 Kommentare

Hallo, ich brauche einmal Hilfe. Ich bin dabei das AD bei uns aufzuräumen. Jetzt benötige ich ein Tool oder ...

Windows Server
Active Directory User Modified Eintrag
Frage von agnostikerWindows Server2 Kommentare

Hi, wenn wir auf unseren DCs unsere User bearbeiten mittels AD Users and Computers haben wir festgestellt das sich ...

Batch & Shell
User im Active Directory mit Powershell erstellen
Frage von XeidazBatch & Shell3 Kommentare

Hallo zusammen, ich bin neu im Forum und wollte mich zu aller erst mal vorstellen. Ich bin 18 Jahre ...

Batch & Shell
Powershell alle Active Directory Gruppen auslesen mit enthaltenen Benutzern
Frage von Berti1Batch & Shell6 Kommentare

Hallo, bin PS Neuling und wir benötigen hier eine Auswertung von unseren Gruppen inkl. Anwender. Aufgabenstellung: Alle Berechtigungsgruppen auslesen ...

Neue Wissensbeiträge
Linux

Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde

Information von Frank vor 1 StundeLinux7 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...

Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 1 TagBatch & Shell9 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 1 TagHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Heiß diskutierte Inhalte
Router & Routing
Zwei Netzwerke erstellen
Frage von bunteblumeRouter & Routing13 Kommentare

Hallo Zusammen, Ich möchte gerne ein backup von einem bestimmten Folder welcher auf dem Server regelmässig synchronisiert wird auf ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Microsoft Office
Outlook Cache Mode Frage
Frage von GwaihirMicrosoft Office11 Kommentare

Hallo zusammen, bin gerade neu in der Firma und lerne hier einige neue Dinge kennen. Zum Beispiel, dass die ...

Windows Server
Windows Store Apps
gelöst Frage von PeterleBWindows Server11 Kommentare

Gibt es einen Weg, auf Windows Server 2016 Windows Store Apps wie zum Beispiel die HP Smart App zu ...