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

VBscript Vor- und Nachname auslesen

Frage Entwicklung VB for Applications

Mitglied: raivan

raivan (Level 1) - Jetzt verbinden

02.10.2008, aktualisiert 09:52 Uhr, 4975 Aufrufe, 3 Kommentare

Hallo,

ich hab folgendes Problem, ich bin nicht so der VBscript Guru und möchte von einem AD Benutzer folgende Daten auslesen:

Vor- und Nachname
E-Mail
User

E-Mail und User hab ich bereits aber Vor- und Nachname noch nicht! Kann mir da jemand helfen? Weiters sollten die Variablen die jetzt in einer MsgBox ausgegeben werden in ein TXT File geschrieben werden!?

raivan

01.
Dim objNetwork 
02.
Set objNetwork = CreateObject("WScript.Network") 
03.
strUser = objNetwork.UserName 
04.
strDomain = objNetwork.UserDomain 
05.
MsgBox strUser 
06.
MsgBox strDomain 
07.
 
08.
mailAdr = GetEmail(strUser, strDomain) 
09.
'wscript.echo mailAdr' 
10.
MsgBox mailAdr 
11.
 
12.
 
13.
Function GetEmail(strAccountName, strDomainName) 
14.
  Dim adoLDAPCon, _ 
15.
      adoLDAPRS, _ 
16.
      strLDAP 
17.
 
18.
 Set adoLDAPCon = CreateObject("ADODB.Connection") 
19.
 adoLDAPCon.Provider = "ADsDSOObject" 
20.
 adoLDAPCon.Open "ADSI" 
21.
 strLDAP = "'LDAP://" & strDomainName & "'" 
22.
 Set adoLDAPRS = adoLDAPCon.Execute("select mail from " _ 
23.
  & strLDAP & " WHERE objectClass = 'user'"& _ 
24.
  " And samAccountName = '" & strAccountName & "'") 
25.
  With adoLDAPRS 
26.
     If Not .EOF Then 
27.
         GetEmail = .Fields("mail") 
28.
     Else 
29.
         GetEmail = "" 
30.
     End If 
31.
 End With 
32.
 adoLDAPRS.Close 
33.
 Set adoLDAPRS = Nothing 
34.
 Set adoLDAPCon = Nothing 
35.
End Function
Mitglied: Logan000
02.10.2008 um 08:55 Uhr
Moin Moin

Vor- und Nachname bekommst du wenn du dein SQL Statement wie folgt erweiterst:
01.
... 
02.
  Set adoLDAPRS = adoLDAPCon.Execute("select sn,givenname,mail from " _  
03.
  & strLDAP & " WHERE objectClass = 'user'" & _ 
04.
  " And samAccountName = '" & strAccountName & "'")  
05.
... 
06.
  If Not .EOF Then  
07.
      GetEmail = .Fields("mail")  
08.
      GetVorname = .Fields("givenname") 
09.
      GetNachname = .Fields("sn") 
10.
...
Eine Textdatei schreiben kann so aussehen:
01.
Dim fso 
02.
Const ForReading = 1  
03.
Const ForWriting = 2  
04.
 Set fso = CreateObject("Scripting.FileSystemObject")  
05.
 Set File = fso.OpenTextFile("C:\Ergebnis.txt", ForWriting, True)  
06.
 File.Write "Dieseer Text kommt in die Textdatei" 
07.
 File.Close
Gruß L.
Bitte warten ..
Mitglied: raivan
02.10.2008 um 09:10 Uhr
Hi,

danke für die schnelle Antwort hab den Code von dir eingebaut, aber wie bekomm ich die Werte nun raus, zb per MsgBox!?

raivan

01.
Dim objNetwork 
02.
Set objNetwork = CreateObject("WScript.Network") 
03.
strUser = objNetwork.UserName 
04.
strDomain = objNetwork.UserDomain 
05.
MsgBox strUser 
06.
MsgBox strDomain 
07.
 
08.
 
09.
mailAdr = GetEmail(strUser, strDomain) 
10.
'wscript.echo mailAdr' 
11.
MsgBox mailAdr 
12.
 
13.
 
14.
Function GetEmail(strAccountName, strDomainName) 
15.
  Dim adoLDAPCon, _ 
16.
      adoLDAPRS, _ 
17.
      strLDAP 
18.
 
19.
 Set adoLDAPCon = CreateObject("ADODB.Connection") 
20.
 adoLDAPCon.Provider = "ADsDSOObject" 
21.
 adoLDAPCon.Open "ADSI" 
22.
 strLDAP = "'LDAP://" & strDomainName & "'" 
23.
 
24.
 Set adoLDAPRS = adoLDAPCon.Execute("select sn,givenname,mail from " _   
25.
 & strLDAP & " WHERE objectClass = 'user'" & _  
26.
 " And samAccountName = '" & strAccountName & "'")   
27.
 
28.
  With adoLDAPRS 
29.
     If Not .EOF Then 
30.
         GetEmail = .Fields("mail") 
31.
         GetVorname = .Fields("givenname") 
32.
         GetNachname = .Fields("sn") 
33.
     Else 
34.
         GetEmail = "" 
35.
     End If 
36.
 End With 
37.
 adoLDAPRS.Close 
38.
 Set adoLDAPRS = Nothing 
39.
 Set adoLDAPCon = Nothing 
40.
End Function
Bitte warten ..
Mitglied: Logan000
02.10.2008 um 09:52 Uhr
Moin

aber wie bekomm ich die Werte nun raus, zb per MsgBox!?
Du hast Doch schon in deinen Code MSGBOX und String verkettung eingesetzt.

z.B.:
01.
     If Not .EOF Then 
02.
         GetEmail = .Fields("mail") 
03.
         GetVorname = .Fields("givenname") 
04.
         GetNachname = .Fields("sn") 
05.
         MSGBOX "Der Benutzer " & GetNachname & ", " & GetVorname _ 
06.
          & " hat folgende eMail: " & GetEmail 
07.
     Else 
08.
...
Gruß L.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows Server
DHCP-Server vor Änderung schützen (1)

Frage von cuilster zum Thema Windows Server ...

Erkennung und -Abwehr
Malwarebytes stellt Malwarebytes 3.0 Premium vor

Link von AnkhMorpork zum Thema Erkennung und -Abwehr ...

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 (2)

Frage von joni2000de zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...