Powershell Erstellen und Verwenden von Windows Forms

Benutzereingaben sind mit der Windows Powershell alltäglich. Dies kann aufgrund der Tatsache, dass die WPS auf dem .NET Framework basiert, auch über VB Objekte realisiert werden.

In diesem Eintrag zeige ich die Erstellung und Verwendung einer einfachen Abfragebox.

messagebox_option4

In diesem Beispiel erstellt ein Powershell Skript eine CSV Datei und fragt den ausführenden User, ob diese auch geöffnet werden soll.

 1. Erstellung der Windows Form

Damit ein solches Objekt genutzt werden kann, muss zunächst eine Assembly geladen werden:

[System.Reflection.Assembly]::LoadWithPartialName(“System.Windows.Forms”) | Out-Null

Dieser Befehl lädt die Assembly System.Windows.Forms und ermöglicht es uns nun, auf die Objekte innerhalb der Assembly zuzugreifen.

Der Befehl für die oben gezeigte Windows Form sieht nun wie folgt aus:

 $msgbox = [System.Windows.Forms.MessageBox]::Show(“Die csv Datei wurde erstellt, möchten Sie die Datei nun öffnen? `n Nein beendet das Skript” , “CEMA GmbH Hamburg” , 4)

 

2. Definition des Windows Form Typs

Die Message Box benötigt 3 Parameter:

  1. Beschreibung
  2. Fenster Titel
  3. Typ

In dem oben gezeigten Beispielbefehl können wir sehen, wie die Parameter übergeben werden. Sie folgen dem Schema:

(“1. Beschreibung”,”2.Fenster Titel”,”3. Typ”)

Die Message Box bietet verschiedene Typen an, die mit dem dritten Parameter spezifiziert werden.

Bestimmt werden diese über die Angabe der Zahl.

Typ 0 = OK

Typ 1 = OK, Abbrechen

Typ 2 = Abbrechen, Wiederholen, Ignorieren

Typ 3 = Ja, Nein, Abbrechen

Typ 4 = Ja, Nein

Typ 5 = Wiederholen, Abbrechen

 

Beispiele für andere Message Box Typen:

Typ 0 :

messagebox_option1

Typ 5:

 messagebox_option5

 

3. Verwendung der Benutzereingabe

Die Messagebox speichert den angeklickten „Wert“ als String in der Variable. Das bedeutet, bei einer Ja/Nein Messagebox steht in der Variablen entweder Yes oder No und bei einer Wiederholen/Abbrechen Messagebox dementsprechend entweder Retry oder Cancel.
(Die Ausgaben einer Typ 5 Messagebox)
messagebox_option5_var  oder:  messagebox_option5_var2

 

Diese fest definierten Werte lassen sich weiterverarbeiten.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.