Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Im AD (w2k3) mehrere User unter Berücksichtigung der Namen ändern

Frage Microsoft Windows Server

Mitglied: HisSickness

HisSickness (Level 1) - Jetzt verbinden

17.09.2007, aktualisiert 21.09.2007, 4340 Aufrufe, 5 Kommentare

Hallo Leute!

Ich würde gerne bei vielen User-Profilen den Eintrag "Connect" wegen eines Serverwechsels ändern, wobei die User sich dabei mit einem Ordner (Netzlaufwerk) verbinden der wie folgt ausschaut: "....\Nachname Vorname"
Die Platzhalter die - soviel ich weiß - im AD dafür stehen (LastName, Firstname) funktionieren scheinbar in dieser Hinsicht nicht wie zb. "...\%UserName%" das dann den Usernamen da hineinschreibt.
Für mich wäre es auch ok im Profil den eintrag "Connect" bei allen zu löschen und via eines Anmeldescripts mit den Ordnern zu verbinden. Habe das auch schon versucht nur auch da habe ich es nicht geschafft dass er das LastName FirstName annimmt.
Kenne mich diesbezüglich leider nicht sehr gut aus, würde mich also sehr über Ratschläge freuen...
Danke schon mal im Vorhinein!

Grüße!
HisSickness
Mitglied: Logan000
17.09.2007 um 12:57 Uhr
Das solte Dir weiterhelfen:

01.
Domain= "MyDomain" 
02.
DomSuffix= "de" 
03.
strUserName = "" 
04.
strFirstname= "" 
05.
strLastname ="" 
06.
 
07.
Set WshNetwork = Wscript.CreateObject("Wscript.Network") 
08.
strUserName = LCase(WshNetwork.Username) 
09.
 
10.
'WScript.Echo strUserName 
11.
 
12.
Set objConnection = CreateObject("ADODB.Connection") 
13.
objConnection.Open "Provider=ADsDSOObject;" 
14.
  
15.
Set objCommand = CreateObject("ADODB.Command") 
16.
objCommand.ActiveConnection = objConnection 
17.
objCommand.CommandText = _ 
18.
    "<LDAP://dc=" & Domain & ",dc=" & DomSuffix & ">;(&(objectCategory=User)" & _ 
19.
         "(samAccountName=" & strUserName & "));samAccountName,givenName,sn;subtree" 
20.
   
21.
Set objRecordSet = objCommand.Execute 
22.
If objRecordset.RecordCount = 0 Then 
23.
    WScript.Echo "sAMAccountName: " & strUserName & " does not exist." 
24.
Else 
25.
    'WScript.Echo strUserName & " exists." 
26.
	'WScript.Echo objRecordset.fields.count 
27.
	'WScript.Echo objRecordset.fields(1).value 
28.
	strFirstname = objRecordset.fields(1).value 
29.
	'WScript.Echo objRecordset.fields(2).value 
30.
	strLastname = objRecordset.fields(2).value 
31.
End If 
32.
objConnection.Close 
33.
 
34.
WScript.Echo  strFirstname & " " &  strLastname
Bitte warten ..
Mitglied: HisSickness
18.09.2007 um 14:22 Uhr
Hallo Logan,

danke für die Hilfe das funktioniert sehr gut..

Ich habe da jetzt versucht ein Script anzuhängen das das alte Netzlaufwerk trennt und dann das neue verbindet.
Wenn ich nicht versuche das Alte zu trennen, dann führt er das Script korrekt aus sofern nicht noch eines mit dem Buchstaben existiert. Wenn ich aber versuche zu trennen und es existiert keines dann bekomme ich eine Fehlermeldung und das Skript stoppt.

01.
Domain= "meine domain" 
02.
DomSuffix= "at" 
03.
strUserName = "" 
04.
strFirstname= "" 
05.
strLastname ="" 
06.
 
07.
Set WshNetwork = Wscript.CreateObject("Wscript.Network") 
08.
strUserName = LCase(WshNetwork.Username) 
09.
 
10.
'WScript.Echo strUserName 
11.
 
12.
Set objConnection = CreateObject("ADODB.Connection") 
13.
objConnection.Open "Provider=ADsDSOObject;" 
14.
  
15.
Set objCommand = CreateObject("ADODB.Command") 
16.
objCommand.ActiveConnection = objConnection 
17.
objCommand.CommandText = _ 
18.
    "<LDAP://dc=" & Domain & ",dc=" & DomSuffix & ">;(&(objectCategory=User)" & _ 
19.
         "(samAccountName=" & strUserName & "));samAccountName,givenName,sn;subtree" 
20.
   
21.
Set objRecordSet = objCommand.Execute 
22.
If objRecordset.RecordCount = 0 Then 
23.
    WScript.Echo "sAMAccountName: " & strUserName & " does not exist." 
24.
Else 
25.
    'WScript.Echo strUserName & " exists." 
26.
	'WScript.Echo objRecordset.fields.count 
27.
	'WScript.Echo objRecordset.fields(1).value 
28.
	strFirstname = objRecordset.fields(1).value 
29.
	'WScript.Echo objRecordset.fields(2).value 
30.
	strLastname = objRecordset.fields(2).value 
31.
End If 
32.
objConnection.Close 
33.
 
34.
WScript.Echo  strFirstname & " " &  strLastname 
35.
 
36.
strFileSRV = "meinserver" 
37.
Set WshNetwork = Wscript.CreateObject("Wscript.Network") 
38.
Set objShell = CreateObject("Shell.Application") 
39.
------hier will ich trennen und habe 2 möglichkeiten versucht die ich weiter unten poste..------- 
40.
WshNetwork.MapNetworkDrive "X:", "\\" & strFileSRV & "\jugendliche\Delta\" & strLastname & " " & strFirstname
Erster Trennversuch:
01.
WshNetwork.RemoveNetworkDrive "X:"
Dabei schreibt er mir einfach dass das Laufwerk nicht existiert..(wobei er natürlich recht hat, aber ich will dass er das ignoriert falls keines besteht und einfach fortfährt anstatt abzubrechen)

Alternativer Trennversuch:
01.
Set WshShell = WScript.CreateObject("WScript.Shell") 
02.
Return = WshShell.Run("net use X: /d /y", 0, True) 
03.
Set WshShell = Nothing 
Dieser funktioniert wenn ich das Script lokal ausführe, aber als Logon-Script schreibt er mir folgende Fehlermeldung und bricht auch ab:
zeile: 41
zeichen: 1
fehler: 0x8007FFFF
code: 8007FFFF
quelle: (null)


Desweiteren wollte ich dieses Netzlaufwerk noch umbenennen mit folgendem Code am Schluss:
01.
objShell.NameSpace("P:").Self.Name = "Jugendliche"
Dabei bekomme ich folgende Fehlermeldung:
Fehler: Objekt erforderlich: 'objShell.NameSpace(...)'
Code: 800A01A8
Quelle: Laufzeitfehler in Microsoft VBScript


Wie sicher unschwer zu erkennen habe ich absolut keine Ahnung von VBS und habe einfach versucht fremde Codes zusammen zu schnippseln. Ist fast gelungen, aber leider nur fast deswegen bitte ich nochmal um Hilfe ;)

Danke!
HisSickness
Bitte warten ..
Mitglied: Logan000
18.09.2007 um 15:18 Uhr
Dabei schreibt er mir einfach dass das Laufwerk nicht existiert..(wobei er
natürlich recht hat, aber ich will dass er das ignoriert falls keines besteht und
einfach fortfährt anstatt abzubrechen)

Setze ein
01.
on error resume next 
davor.

Solte es nicht heißen:
01.
WshNetwork.NameSpace("P:").Self.Name = "Jugendliche"
Bitte warten ..
Mitglied: HisSickness
20.09.2007 um 15:00 Uhr
Funktioniert soweit gut danke!
Nur das mit dem umbenennen noch nicht..
Solte es nicht heißen:
01.
> WshNetwork.NameSpace("P:").Self.Name 
02.
> = "Jugendliche"

scheinbar nicht.. hier schreibt er:

Fehler: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.: 'WshNetwork.NameSpace'
Bitte warten ..
Mitglied: Logan000
21.09.2007 um 08:37 Uhr
Stimmt mein Fehler. So wäre es richtig.
01.
Set objShell = CreateObject("Shell.Application") 
02.
objShell.NameSpace("X:").Self.Name = "NeuerName"
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excelsheet gesperrt durch nicht mehr vorhandenen AD-User (5)

Frage von Dopamin85 zum Thema Microsoft Office ...

Microsoft Office
gelöst Wird ein Cloud-User durch AD-Sync überschrieben (2)

Frage von olimo zum Thema Microsoft Office ...

Windows Server
gelöst Fileserver AD ändern (3)

Frage von homermg zum Thema Windows Server ...

Windows Server
Nslookup auf AD Domain Namen (13)

Frage von agnostiker zum Thema Windows Server ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Seekrank bei Windows 10 (17)

Frage von zauberer123 zum Thema Windows 10 ...

Windows Server
gelöst Kopiervorgang schlägt fehl, weil Datei- und Ordnername zu lang sind (14)

Frage von Schroedi zum Thema Windows Server ...

Windows 10
Windows 10 Fall Creators Update Fehler (13)

Frage von ZeroCool23 zum Thema Windows 10 ...