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, 5031 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
Ähnliche Inhalte
Exchange Server
SBS 2011 - Outlook Web App - Kritischer Fehler im Script (4)

Frage von Antshit zum Thema Exchange Server ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst PC nach einem Kopiervorgang herunterfahren - PowerShell Script? (4)

Frage von Stefan007 zum Thema Batch & Shell ...

Apache Server
gelöst Fehler beim Import einer DB vom anderen MySQL-Server (2)

Frage von zeroblue2005 zum Thema Apache Server ...

Heiß diskutierte Inhalte
Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (14)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...

Viren und Trojaner
Wie werde ich den Mist "fanli90" wieder los? (12)

Frage von Taumel zum Thema Viren und Trojaner ...