Quantcast
Channel: Windows PowerShell Forum
Viewing all articles
Browse latest Browse all 2314

Problem bei Button Events

$
0
0

Hallo zusammen,

ich bastel gerade an einem kleinen Skript mit GUI zum Sichern von Dateien. Leider habe ich das Problem, das ich, egal ob ich den OK, Cancel oder Schließen ("X)" Button betätige, immer das gleiche Ergebnis erhalte.

Beim Klick auf "Start" soll die eigentliche Backupfunktion starten und bei X bzw Cancel das Fenster ohne jegliche Aktion geschlossen werden.

Ich finde den Fehler leider nicht, hier der Code:

$drives = Get-PSDrive -PSProvider FileSystem

[void] [System.Reflection.Assembly]::LoadWithPartialName(„System.Drawing“)
[void] [System.Reflection.Assembly]::LoadWithPartialName(„System.Windows.Forms“)
$objForm = New-Object System.Windows.Forms.Form
$objForm.Text = „directory backup“
$objForm.Size = New-Object System.Drawing.Size(400,300)
$objForm.StartPosition = „CenterScreen“
$objForm.KeyPreview = $True
$objForm.Add_KeyDown({if ($_.KeyCode -eq „Escape“) { $objForm.DialogResult=“Cancel“;$objForm.Close()} })


$objLabel = New-Object System.Windows.Forms.Label
$objLabel.Location = New-Object System.Drawing.Size(10,40)
$objLabel.Size = New-Object System.Drawing.Size(280,20)
$objLabel.Text = „Welcher Ordner soll gesichert werden?“
$objForm.Controls.Add($objLabel)

$objbackupsrc = New-Object System.Windows.Forms.TextBox
$objbackupsrc.Location = New-Object System.Drawing.Size(10,60)
$objbackupsrc.Size = New-Object System.Drawing.Size(300,20)
$objForm.Controls.Add($objbackupsrc)

$objbackupbrowsebtn = New-Object System.Windows.Forms.Button
$objbackupbrowsebtn.Location = New-Object System.Drawing.Size(320,60)
$objbackupbrowsebtn.Size = New-Object System.Drawing.Size(50,20)
$objbackupbrowsebtn.Text = "Suche"
$objForm.Controls.Add($objbackupbrowsebtn)

$objbackupbrowsebtn.Add_Click(
        {
		Add-Type -AssemblyName System.Windows.Forms
        $FolderBrowser = New-Object System.Windows.Forms.FolderBrowserDialog
        [void]$FolderBrowser.ShowDialog()
        $objbackupsrc.Text = $FolderBrowser.SelectedPath
        }
    )

$objLabel = New-Object System.Windows.Forms.Label
$objLabel.Location = New-Object System.Drawing.Size(10,100)
$objLabel.Size = New-Object System.Drawing.Size(280,20)
$objLabel.Text = „Ziellaufwerk“
$objForm.Controls.Add($objLabel)

$objbackupdst = New-Object System.Windows.Forms.Combobox
$objbackupdst.Location = New-Object System.Drawing.Size(10,120)
$objbackupdst.Size = New-Object System.Drawing.Size(360,20)
foreach ($drive in $drives)
{
[void] $objbackupdst.Items.Add($drive.Root)
}
$objbackupdst.Height = 70
$objbackupdst.Sorted = $true
$objForm.Controls.Add($objbackupdst)
$objForm.Topmost = $True
$objForm.Add_Shown({$objForm.Activate()})

$objbackupbtn = New-Object System.Windows.Forms.Button
$objbackupbtn.Location = New-Object System.Drawing.Size(40,160)
$objbackupbtn.Size = New-Object System.Drawing.Size(66,20)
$objbackupbtn.Text = "Start"
$objbackupbtn.DialogResult = "OK"
$objForm.Controls.Add($objbackupbtn)

$objcancelbtn = New-Object System.Windows.Forms.Button
$objcancelbtn.Location = New-Object System.Drawing.Size(140,160)
$objcancelbtn.Size = New-Object System.Drawing.Size(66,20)
$objcancelbtn.Text = "Abbruch"
$objcancelbtn.DialogResult = "Cancel"
$objcancelbtn.Add_Click({$objForm.Close()})
$objForm.Controls.Add($objcancelbtn)

[void] $objForm.ShowDialog()

function Start-Backup
{

Write-Host "Start Button gedrückt"

}

if($objbackupbtn.DialogResult = "OK")
{
Start-Backup
}

Ich hoffe es kann jemand helfen!

Danke im Voraus.



Freundliche Grüße

Sandro
MCSA: Windows Server 2012
Fachinformatiker Fachrichtung Systemintegration (IHK, 07/2013)




Viewing all articles
Browse latest Browse all 2314


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>