Schlagwort: SetBufferContents

Powershell: Bildschirmbereich mit GetBufferContents sichern und wieder herstellen

Beschreibung:

Da ich ein Fan der Konsole bin und gerne mehr mit Powershell  erledigen möchte , habe ich mich auf die Suche gemacht, komfortable Werte abzufragen in Form eines Formulars. Klar ich kann mit Tools mit eine GUI zusammenbasteln und auf die Ereignisse reagieren. Aber dann befinde ich mich schon wieder außerhalb der Konsole. Also was tun.

Ich habe also angefangen ein Formulartool für die Shell zu erstellen. Was bis dato auch schon super funktioniert. Aber da ich auch Auswahlfelder haben möchte, bin auf das Problem gestoßen, da ich beim Einblenden der möglichen Werte, andere Feldbreiche überschreibe. Also muss ich vor dem Einblenden den Bereich, in dem ich die Werte einlebenden möchte, zwischenspeichern. Dazu habe ich die Funktion GetBackGround geschrieben die mit der Funktion GetBufferContents einen Bereich sichert.

Ich gebe als Parameter die linke obere und die rechte untere Ecke als Koordinaten an. Dann sichert mir die Funktion den Inhalt und gibt sie mir zurück.

Ich fühle mich, irgendwie wie in alte DOS Zeiten versetzt. Die ersten Programmier Erfahrungen mit Fenstertechnik unter Turbo Basic und Dos.

Mit der Funktion SetBackGround wird der gesicherte Inhalt einfach wieder an der Ursprungsposition ausgegeben. Weitere Funktionen rund um mein Powershell Formulartool für die Shell werde ich zu einem späteren Zeitpunkt hier veröffentlichen.

Funktion GetBackGround:

Parameter:

Parametername Parameterwert
intLeft Spalte der linken oberen Ecke (beginnt mit 0)
intTop Zeile der linken oberen Ecke (beginnt mit 0)
intRight Spalte der rechten unteren Ecke
intBottom Zeile der rechten unteren Ecke

Rückgabe:

Rückgabetyp Rückgabewerte
Array [0] = CursorPosition der linken oberen Ecke
[1] = Array der Daten die gesichert wurden inkl. Farbwerten

Code:

Funktion GetbackGround:

Parameter:

Parametername Parameterwert
objData Array mit Daten
[0] = CursorPosition der linken oberen Ecke
[1] = Array der Daten die gesichert wurden inkl. Farbwerten

Code:

Beispiel:

Download:

Download Button Powershell ScriptKlick für Download