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

Fehler im Script Methode nicht unterstützt

Frage Entwicklung VB for Applications

Mitglied: JoshuaTree

JoshuaTree (Level 1) - Jetzt verbinden

23.07.2008, aktualisiert 24.07.2008, 5008 Aufrufe, 3 Kommentare

Hallo,

ich versuche mit folgendem Script user aus einer CSV zu erstellen.
So sieht die user.txt aus : MeinUser;start123;Main;User;User, Main;Mainuser.CMD;a00_g_Fil0201

Jetzt läuft alles soweit bis er zu dem Punkt "kontoneu.sn" und sagt die Methode ist nicht unterstützt.
Das gleich Problem hatte ich schon zuvor beim "userprincipalname" daher ist dieser auskommentiert
Kann es sein das der Provider WinNT sn nicht unterstützt?
Bitte schau sich das mal jemand an, Danke

Gruss
Andreas

*

msg = "Kurzbeschreibung:" & vbCr & "Dieses Skript legt automatisiert neue Konten an und liest die dafür nötigen Angaben aus c:\test\user.txt ." & vbCr & vbCr & "Skript jetzt ausführen?"
antwort = MsgBox(msg, vbYesNo + vbQuestion)
if antwort = vbNo then
MsgBox "Abbruch", vbExclamation
WScript.Quit
end if
protokoll = "c:\temp\protokoll.txt"

' Das WScript.Network-Objekt liefert den Namen des Computers,
' der als Vorgabe angeboten wird
'SYS: Windows Script Host Runtime Library
Set net = CreateObject("WScript.Network")

ComputerName = InputBox("Bitte geben Sie den Computernamen ein!",,net.ComputerName)
On Error Resume Next
Set computer = GetObject("WinNT://" & ComputerName & ",computer")
If Err.number = 0 Then
MsgBox "Verbindung hergestellt."
Else
MsgBox "Keine Verbindung zu " & ComputerName
WScript.Quit
End If
On Error Goto 0

dateiname = InputBox("Wo liegen die Kontoinformationen?",,"c:\temp\user.txt")

' Datei öffnen
'SYS: Microsoft (r) Script Runtime
Set fs = CreateObject("Scripting.FileSystemObject")
If Not fs.FileExists(dateiname) Then
MsgBox "Die Datei existiert am angegebenen Ort nicht!"
WScript.Quit
End If

Set infos = fs.OpenTextFile(dateiname)

' Protokolldatei öffnen
Set output = fs.CreateTextFile(protokoll, True)

' Datei zeilenweise bis zum Ende (atEndOfStream) lesen:
Do Until infos.AtEndOfStream
' eine Zeile einlesen
zeile = infos.ReadLine

' Informationen durch Semikola splitten
details = Split(zeile, ";")

' Konto anlegen
Set kontoneu = computer.Create("User", Trim(details(0)))
kontoneu.setpassword Trim(details(1))
'kontoneu.userprincipalname = Trim(details(2))
kontoneu.sn = Trim(details(2))
kontoneu.givenname = Trim(details(3))
kontoneu.displayname = Trim(details(4))
kontoneu.scriptpath = Trim(details(5))
kontoneu.userhome = Trim(details(6))



On Error Resume Next
kontoneu.SetInfo
If Err.number = 0 Then
WriteLog details(0) & " angelegt."
AddToGroup Trim(details(7)), kontoneu.ADsPath
Else
WriteLog details(0) & " konnte nicht angelegt werden!"
End If
Err.Clear
On Error Goto 0
Loop

' Dateien schließen
infos.Close
output.Close

' Protokoll anzeigen:
'SYS: Microsoft (r) Script Runtime
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run """" & protokoll & """"


Sub AddToGroup(gruppenname, kontoname)
On Error Resume Next
Set gruppe = GetObject("WinNT://" & ComputerName & "/" & gruppenname & ",group")
gruppe.Add kontoname
gruppe.SetInfo
If Err.number = 0 Then
WriteLog "Konto ist Mitglied in Gruppe " & gruppenname
Else
WriteLog "Konto konnte nicht zum Mitglied in Gruppe " & gruppenname & " gemacht werden."
End If
Err.Clear
End Sub

Sub WriteLog(text)
' eine Zeile ins Protokoll schreiben
output.WriteLine text
End Sub

***
Mitglied: bastla
23.07.2008 um 17:11 Uhr
Hallo JoshuaTree!

Kann es sein das der Provider WinNT sn nicht unterstützt?
Problem erkannt - siehe NameAttributes unter WinNT vs LDAP.

Und wenn Du schon einmal dort bist: unter AD Attributes findest Du einige (Excel-)Tabellen zum Download ...

Grüße
bastla
Bitte warten ..
Mitglied: JoshuaTree
24.07.2008 um 09:26 Uhr
Hi,

dachte mir schon sowas.

Jetzt habe ich das Bind so gemacht
Set computer = GetObject("LDAP://"& ComputerName &"/dc=domäne,dc=corp")

Jetzt meckert er rum das mit der DN in Zeile 54 was nicht stimmt
vermute es geht dabei um das --->computer.Create("User", Trim(details(0))).

Oh man ich bin echt zu doof für dieses Zeug, was könnte ihm denn
jetzt wieder nicht passen. Bekomme jetzt langsam Zeitdruck das
ist nich förderlich. Bin für jede hilfe dankbar
Bitte warten ..
Mitglied: bastla
24.07.2008 um 09:37 Uhr
Hallo JoshuaTree!

Falls, wie anzunehmen, in der Variable "ComputerName" einfach der Name des Rechners steht, müsste die Zeile etwa so aussehen:
01.
Set computer = GetObject("LDAP://cn="& ComputerName & ",cn=Computers,dc=domäne,dc=corp")
bzw, wenn der Computer in einer OU zu finden ist:
01.
Set computer = GetObject("LDAP://cn="& ComputerName & ",ou=DeineOU,dc=domäne,dc=corp")
Hier kannst Du übrigens den "Softerra LDAP Browser" als Freeware herunterladen - der sollte beim Finden der richtigen Pfade helfen ...

Grüße
bastla

[Edit] Fehlende Kommata nachgetragen [/Edit]
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Exchange Server
SBS 2011 - Outlook Web App - Kritischer Fehler im Script (4)

Frage von Antshit zum Thema Exchange Server ...

Microsoft Office
Fehler beim schließen von Outlook 2016 auf Terminalserver (6)

Frage von Tommy1983 zum Thema Microsoft Office ...

VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Hardware
Unterstützt mein Laptop einen 1440p 60hz externen Monitor? (2)

Frage von thomasreischer zum Thema Hardware ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...