Top-Themen

Aktuelle Themen (A bis Z)

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

Powershell Programm nur starten falls button geklickt wird

Mitglied: der123456

der123456 (Level 1) - Jetzt verbinden

24.01.2014 um 10:55 Uhr, 2092 Aufrufe, 3 Kommentare

Hallo Zusammen

Ich habe eine Frage bezüglich Powershell. Wenn ich ein kleines weiteres Programm habe und dies nur ausführen möchte falls der Button geklickt wird, wie geht das?
Ich habe es versucht und dieses kleine Programm wird jedesmal beim Ausführen vom Skript ebenfalls ausgeführt, aber ich möchte das kleine Programm nur ausgeführt haben beim Button-click.

Ich möchte gerne, dass das kleine programm in eine Variable geschrieben wird z.B. $Programm1 = ....
und dann sage ich beim Button-click führe das $Programm1 aus.
Könnt Ihr mir da weiterhelfen?
Vielen Dank.

Mitglied: colinardo
24.01.2014, aktualisiert um 11:56 Uhr
Hallo der123456, Willkommen im Forum!
kleines Beispiel, der für dich relevante Code steht ab Zeile 18 im Event für den Button-Klick. Dort wird ein Script-Block in einer Variablen gespeichert und dann ausgeführt. Im Beispiel wird nur eine Message-Box angezeigt.
01.
function GenerateForm { 
02.
 
03.
#region Import the Assemblies 
04.
[reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null 
05.
[reflection.assembly]::loadwithpartialname("System.Drawing") | Out-Null 
06.
#endregion 
07.
 
08.
#region Form Objects 
09.
$form1 = New-Object System.Windows.Forms.Form 
10.
$btnStartScript = New-Object System.Windows.Forms.Button 
11.
$InitialFormWindowState = New-Object System.Windows.Forms.FormWindowState 
12.
#endregion Generated Form Objects 
13.
 
14.
#---------------------------------------------- 
15.
# Event Script Blocks 
16.
#---------------------------------------------- 
17.
 
18.
$btnStartScript_OnClick=  
19.
20.
    $myProgram = { [System.Windows.Forms.MessageBox]::Show("Das Programm wurde ausgeführt") } 
21.
    &$myProgram 
22.
23.
 
24.
$OnLoadForm_StateCorrection= 
25.
{#Correct the initial state of the form to prevent the .Net maximized form issue 
26.
	$form1.WindowState = $InitialFormWindowState 
27.
28.
 
29.
#---------------------------------------------- 
30.
#region Form Code 
31.
$System_Drawing_Size = New-Object System.Drawing.Size 
32.
$System_Drawing_Size.Height = 76 
33.
$System_Drawing_Size.Width = 224 
34.
$form1.ClientSize = $System_Drawing_Size 
35.
$form1.DataBindings.DefaultDataSourceUpdateMode = 0 
36.
$form1.MaximizeBox = $False 
37.
$form1.MinimizeBox = $False 
38.
$form1.Name = "form1" 
39.
$form1.Text = "Demo Form" 
40.
 
41.
 
42.
$btnStartScript.DataBindings.DefaultDataSourceUpdateMode = 0 
43.
 
44.
$System_Drawing_Point = New-Object System.Drawing.Point 
45.
$System_Drawing_Point.X = 53 
46.
$System_Drawing_Point.Y = 25 
47.
$btnStartScript.Location = $System_Drawing_Point 
48.
$btnStartScript.Name = "btnStartScript" 
49.
$System_Drawing_Size = New-Object System.Drawing.Size 
50.
$System_Drawing_Size.Height = 23 
51.
$System_Drawing_Size.Width = 115 
52.
$btnStartScript.Size = $System_Drawing_Size 
53.
$btnStartScript.TabIndex = 0 
54.
$btnStartScript.Text = "Starte Programm" 
55.
$btnStartScript.UseVisualStyleBackColor = $True 
56.
$btnStartScript.add_Click($btnStartScript_OnClick) 
57.
 
58.
$form1.Controls.Add($btnStartScript) 
59.
 
60.
#endregion Form Code 
61.
 
62.
#Save the initial state of the form 
63.
$InitialFormWindowState = $form1.WindowState 
64.
#Init the OnLoad event to correct the initial state of the form 
65.
$form1.add_Load($OnLoadForm_StateCorrection) 
66.
#Show the Form 
67.
$form1.ShowDialog()| Out-Null 
68.
 
69.
} #End Function 
70.
 
71.
#Call the Form-Function 
72.
GenerateForm
Grüße Uwe
Bitte warten ..
Mitglied: der123456
24.01.2014 um 14:14 Uhr
Hallo Uwe

Danke! Aber bei mir hat es nicht geklappt. Kann man ein ganzes Programm/Skript in eine Variable einschreiben.... nd dann beim Button klick sollte das ganze Programm durchlaufen... Wie geht das?
Danke nochmals

Gruss der123456
Bitte warten ..
Mitglied: colinardo
24.01.2014, aktualisiert 25.01.2014
Zitat von der123456:
Danke! Aber bei mir hat es nicht geklappt. Kann man ein ganzes Programm/Skript in eine Variable einschreiben.... nd dann beim
Button klick sollte das ganze Programm durchlaufen... Wie geht das?
Danke nochmals
bitte beschreibe dein Vorhaben genauer; wo soll dieser Button sein ? in einer Form ? woanders? bitte mehr Info. Das obige Script läuft einwandfrei, du musst halt einen Fehler bei deiner Umsetzung gemacht haben.
Ich habe es oben ja erläutert was du machen musst und wo du es einfügen musst...

ein Script packt man so in eine Variable:
01.
$variable =  { 
02.
 # Dein Scriptblock  
03.
 write-host "Test" 
04.
}
und so führst du so ein Scriptblock aus (man beachte das &-Zeichen):
&$variable
Bitte warten ..
Ähnliche Inhalte
Windows Server

Powershell Programm über Citrix starten

Frage von Florian86Windows Server2 Kommentare

Hallo, ich habe eine Verknüpfung auf unseren Citrixserver welche ich über die Powershell starte und über Citrix verteile. Eine ...

Batch & Shell

Powershell: Nur max. einen Runspace per Button starten?

Frage von Markus2016Batch & Shell5 Kommentare

Hallo zusammen, seit langen habe ich mal wieder Zeit gefunden an meiner GUI weiter zu arbeiten. In der GUI ...

Batch & Shell

Programm reagiert nicht - per Powershell neu starten?

gelöst Frage von NathalemBatch & Shell2 Kommentare

Hallo liebe Administratoren, wir haben auf verschiedenen Windows Servern Anwendungen laufen die, die Gewohnheit haben sich ab und zu ...

Batch & Shell

Powershell Button um Listbox einträge auszuwählen

gelöst Frage von BuggerBatch & Shell4 Kommentare

Hallo, ist es möglich Einträge in einer Listbox per extra Button auszuwählen? In einer langen Liste hätte man so ...

Neue Wissensbeiträge
CMS
Erneut kritische Zero-Day-Lücke in Drupal
Tipp von Reini82 vor 2 StundenCMS

Laut einem Bericht auf t3n gibt es eine Schwere Sicherheitslücke in Drupal die auch schon ausgenutzt wird. Betroffen sind ...

Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 22 StundenSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 1 TagWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 1 TagiOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Heiß diskutierte Inhalte
Batch & Shell
Powershell: Im AD nach Rechnern mit bestimmten IP-Adressen suchen
gelöst Frage von Raven42Batch & Shell36 Kommentare

Hallo zusammen, ich suche nach einer Möglichkeit nach Computern im AD zu suchen , deren IP-Adresse mit 10.11.12. beginnt. ...

Windows Server
Alten DC entfernen
gelöst Frage von smartinoWindows Server27 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...

Ausbildung
Wie gelingt ein guter Einstieg in die FiSi-Ausbildung? (Umschulung)
Frage von SiAnKoAusbildung25 Kommentare

Schönen guten Tag, ich bin SiAnKo und habe seit dem 1.04.2018 eine Umschulung als FiSi angefangen. Ich möchte natürlich ...

Batch & Shell
Mit Powershell den Inhalt einer Excel mit einer Text Datei abgleichen
gelöst Frage von Bommi1961Batch & Shell21 Kommentare

Hallo zusammen, ich muss den Inhalt einer Excel Datei (Mappe1) mit dem Daten einer Text Datei abgleichen. Die Daten ...