thlsoft 10 Geschrieben 5. Januar 2018 Melden Teilen Geschrieben 5. Januar 2018 Hallo, habe ein Powershell-Skript, dass einen AD-User anlegt und Gruppen als Mitglied hinzufügt. Funktioniert soweit sehr gut. Habe nur ein Problem: Wenn ich das GUI-Fenster, was ich über -NET-Framework verwende schließen will, kommen über die PS ISE Fehlermeldungen, dass die Argumente für den Parameter "Members" nicht überprüft werden kann u.a. z.B. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Clear-ADAccountExpiration : Das Argument für den Parameter "Identity" kann nicht überprüft werden. Das Argument ist NULL. Geben Sie ein Argument an, das nicht NULL ist, und führen Sie dann den Befehl erneut aus. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:547 Zeichen:42 + Clear-ADAccountExpiration -identity <<<< $user; + CategoryInfo : InvalidData: (:) [Clear-ADAccountExpiration], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.ClearADAccountExpiration emailSMTP Interner = SMTP:. EDV Service = EDV Service New-ADUser : Das Argument für den Parameter "Name" kann nicht überprüft werden. Das Argument ist NULL oder leer. Geben Sie ein Argument an, das nicht NULL oder leer ist, und führen Sie dann den Befehl erneut aus. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:590 Zeichen:9 + -Name <<<< $user ` + CategoryInfo : InvalidData: (:) [New-ADUser], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.NewADUser Add-ADGroupMember : Das Argument für den Parameter "Members" kann nicht überprüft werden. Das Argument ist NULL oder leer. Geben Sie ein Argument an, das nicht NULL oder leer ist, und führen Sie dann den Befehl erneut aus. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:623 Zeichen:45 + Add-ADGroupMember -identity $group -members <<<< $user + CategoryInfo : InvalidData: (:) [Add-ADGroupMember], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.AddADGroupMember Add-ADGroupMember : Das Argument für den Parameter "Members" kann nicht überprüft werden. Das Argument ist NULL oder leer. Geben Sie ein Argument an, das nicht NULL oder leer ist, und führen Sie dann den Befehl erneut aus. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:624 Zeichen:53 + Add-ADGroupMember -identity $groupInternet -members <<<< $user + CategoryInfo : InvalidData: (:) [Add-ADGroupMember], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.AddADGroupMember Add-ADGroupMember : Das Argument für den Parameter "Members" kann nicht überprüft werden. Das Argument ist NULL oder leer. Geben Sie ein Argument an, das nicht NULL oder leer ist, und führen Sie dann den Befehl erneut aus. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:625 Zeichen:49 + Add-ADGroupMember -identity $groupLisa -members <<<< $user + CategoryInfo : InvalidData: (:) [Add-ADGroupMember], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.AddADGroupMember Clear-ADAccountExpiration : Das Argument für den Parameter "Identity" kann nicht überprüft werden. Das Argument ist NULL. Geben Sie ein Argument an, das nicht NULL ist, und führen Sie dann den Befehl erneut aus. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:634 Zeichen:42 + else {Clear-ADAccountExpiration -identity <<<< $user} # Internet Mitarbeiter = Ablaufdatum NICHT setzen! + CategoryInfo : InvalidData: (:) [Clear-ADAccountExpiration], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.ClearADAccountExpiration Der Ordner \\yrdestor01\user$\ existiert bereits und muss nicht neu angelegt werden! Clear-Variable : Es kann keine Variable mit dem Namen "user" gefunden werden. Bei L:\appl\PowershellScripte\Aduseranlegen.ps1:684 Zeichen:17 + clear-variable <<<< user + CategoryInfo : ObjectNotFound: (user:String) [Clear-Variable], ItemNotFoundException + FullyQualifiedErrorId : VariableNotFound,Microsoft.PowerShell.Commands.ClearVariableCommand -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Wie gesagt, der Code an den entsprechenden Stellen funktioniert. Habe auch ein Abbrechen Button erstellt, der das Skript sauber beendet. Ohne ISE ist auch nichts sichtbar. Da eine Do..While Schleife über das ganze Skript läuft würde ich gerne folgendes tun: Entweder die Symbole für das Schließen des Fensters ausblenden (falls möglich) oder das schließen entsprechend abfangen, damit kein weiterer Code ausgeführt wird. Wie kann ich das realisieren. Wie gesagt, der gesamte Code hat sonst keine Fehler und läuft. Danke im Voraus. Thomas Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 6. Januar 2018 Melden Teilen Geschrieben 6. Januar 2018 Wenn es für Dich ok ist, dann poste doch mal den Code um einen Blick darauf zu werfen. Wie beendest du die Schleife? Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.