Blog
Hier poste ich dinge zu Themen die mich beschäftigten.
2023-04-30
Sie können ein PowerShell-Skript erstellen, das eine einfache grafische Benutzeroberfläche (GUI) bereitstellt, um den Computernamen für PSEXEC einzugeben und einige Standard-PSEXEC-Befehle über ein Zahlenmenü auszuführen. Hier ist ein Beispiel:
“`powershell
Add-Type -AssemblyName System.Windows.Forms
# PSEXEC-Pfad
$psexecPath = “C:pathtopsexec.exe” # Ändern Sie dies entsprechend dem Pfad Ihrer PSEXEC-Datei
# GUI-Elemente erstellen
$form = New-Object System.Windows.Forms.Form
$form.Text = “PSEXEC GUI”
$form.Size = New-Object System.Drawing.Size(300, 150)
$form.StartPosition = “CenterScreen”
$label = New-Object System.Windows.Forms.Label
$label.Text = “Enter target computer name:”
$label.AutoSize = $true
$label.Location = New-Object System.Drawing.Point(10, 20)
$form.Controls.Add($label)
$textBox = New-Object System.Windows.Forms.TextBox
$textBox.Location = New-Object System.Drawing.Point(10, 40)
$form.Controls.Add($textBox)
$okButton = New-Object System.Windows.Forms.Button
$okButton.Text = “OK”
$okButton.Location = New-Object System.Drawing.Point(200, 40)
$okButton.Size = New-Object System.Drawing.Size(75, 23)
$okButton.DialogResult = [System.Windows.Forms.DialogResult]::OK
$form.Controls.Add($okButton)
$form.AcceptButton = $okButton
# Funktion zum Ausführen von PSEXEC-Befehlen
function Run-PsexecCommand {
param (
[string]$ComputerName,
[string]$Command
)
& $psexecPath \$ComputerName $Command
}
# Hauptausführung
$result = $form.ShowDialog()
if ($result -eq [System.Windows.Forms.DialogResult]::OK) {
$computerName = $textBox.Text
$menu = @”
Select an option:
1. Open remote command prompt
2. Restart remote computer
3. Shutdown remote computer
“@
$choice = Read-Host -Prompt $menu
switch ($choice) {
“1” {
Run-PsexecCommand -ComputerName $computerName -Command “cmd.exe”
}
“2” {
Run-PsexecCommand -ComputerName $computerName -Command “shutdown.exe /r /t 0”
}
“3” {
Run-PsexecCommand -ComputerName $computerName -Command “shutdown.exe /s /t 0”
}
default {
Write-Host “Invalid choice. Exiting.”
}
}
}
“`
Dieses Skript erstellt eine einfache GUI, in der Sie den Computernamen eingeben können. Nachdem Sie auf “OK” geklickt haben, wird ein Zahlenmenü angezeigt, in dem Sie eine der verfügbaren Optionen auswählen können:
1. Öffnen Sie die Remote-Eingabeaufforderung.
2. Starten Sie den Remote-Computer neu.
3. Schalten Sie den Remote-Computer aus.
Passen Sie den `$psexecPath` an den tatsächlichen Pfad Ihrer PSEXEC-Datei an. Fügen Sie bei Bedarf weitere PSEXEC-Befehle hinzu, indem Sie dem switch-Anweisungsblock im Skript zusätzliche Optionen hinzufügen.
Admin - 19:39:07 @ Projekte, Powershell-Skripte | Kommentar hinzufügen
Die an dieser Stelle vorgesehenen Inhalte können aufgrund Ihrer aktuellen Cookie-Einstellungen nicht angezeigt werden.
Diese Webseite bietet möglicherweise Inhalte oder Funktionalitäten an, die von Drittanbietern eigenverantwortlich zur Verfügung gestellt werden. Diese Drittanbieter können eigene Cookies setzen, z.B. um die Nutzeraktivität zu verfolgen oder ihre Angebote zu personalisieren und zu optimieren.
Diese Webseite verwendet Cookies, um Besuchern ein optimales Nutzererlebnis zu bieten. Bestimmte Inhalte von Drittanbietern werden nur angezeigt, wenn die entsprechende Option aktiviert ist. Die Datenverarbeitung kann dann auch in einem Drittland erfolgen. Weitere Informationen hierzu in der Datenschutzerklärung.
Kommentar hinzufügen
Die Felder Name und Kommentar sind Pflichtfelder.