Jump to content
thlsoft

Powershell 2.0 (Windows 7) - Schließen des Fensters abfangen oder Schließen-Symbol ausblenden

Empfohlene Beiträge

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

 

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden

×