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

Fehler in der If-Abfrage

$
0
0

Hey zusammen,

Ich hab bei meinem Programm das einen Share erstellen soll ein Problem bei der zweiten If Abfrage.

Vorab ich bin neu was das Programmieren angeht, kann also gut sein das einiges unnötig kompliziert oder so ist ^^
Hier erstmal der Code

Code:
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing")
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")

#Fenster
$form = New-Object Windows.Forms.Form
$form.text = "Share erstellen"

#Label
$label = New-Object Windows.Forms.Label
$label.Location = New-Object Drawing.Point 50,30
$label.Size = New-Object Drawing.Point 200, 15
$label.Text = "Geben Sie den Pfad an"
$form.Controls.Add($label)

#Textbar für den Pfad
$textPath = New-Object Windows.Forms.Textbox
$textPath.Location = New-Object Drawing.Point 50,60
$textPath.Size = New-Object Drawing.Point 200,30
$textPath.Text = "E:\"
$form.Controls.Add($textPath)

#Textbar für den Namen
$textName = New-Object Windows.Forms.Textbox
$textName.Location = New-Object Drawing.Point 50,60
$textName.Size = New-Object Drawing.Point 200, 30
$textName.Text = "Sharename\"

#Textbar für den Unterordner und die AD-Gruppe
$textAD = New-Object Windows.Forms.Textbox
$textAD.Location = New-Object Drawing.Point 50,60
$textAD.Size = New-Object Drawing.Point 200,30
$textAD.Text = "Unterordner"

#Pfad Variable
$Path = ($textPath.Text + $textName.Text)

#EndeKnopf
$ButtonEnd = New-Object Windows.Forms.Button
$ButtonEnd.Location = New-Object Drawing.Point 150,200
$ButtonEnd.Text = "Ende"

#Cancelknopf
$ButtonCancel = New-Object Windows.Forms.Button
$ButtonCancel.Location = New-Object Drawing.Point 150,200
$ButtonCancel.Text = "Cancel"
$ButtonCancel.Add_Click({$form.Close()})
$form.Controls.Add($ButtonCancel)

#WeiterButton Nr.3
$WeiterButton3 = New-Object Windows.Forms.Button
$WeiterButton3.Location = New-Object Drawing.Point 50,200
$WeiterButton3.Text = "Weiter"

#WeiterButton Nr.2
$WeiterButton2 = New-Object Windows.Forms.Button
$WeiterButton2.Location = New-Object Drawing.Point 50,200
$WeiterButton2.Text = "Weiter"

#WeiterButton Nr.1
$WeiterButton1 = New-Object Windows.Forms.Button
$WeiterButton1.Location = New-Object Drawing.Point 50,200
$WeiterButton1.Text = "Weiter"
$form.Controls.Add($WeiterButton1)
$WeiterButton1.Add_Click({

if (Test-Path $textPath.Text)
{
$label.Text = "Geben Sie den Sharename ein"
$form.Controls.Remove($textPath)
$form.Controls.Remove($WeiterButton1)

$form.Controls.Add($textName)
$form.Controls.Add($WeiterButton2)
}
Else
{
$label.Text = ("Der Pfad" + $textPath.Text + "konnte nicht gefunden werden")
}
})

$WeiterButton2.Add_Click({

if (Test-Path $Path)
{
$label.Text = "Der Ordner existiert bereits"
}
Else 
{
New-Item -Name $textName.Text -ItemType directory -Path $textPath.Text

$form.Controls.Remove($textName)
$form.Controls.Remove($WeiterButton2)
}

})

$form.ShowDialog()

Bei der ersten funktioniert Alles super, ich gebe einen korrekten Pfad ein und er macht weiter, ich gebe einen falschen ein und er ändert nur den Text in "Pfad nicht vorhanden"

Bei der zweiten jedoch erstellt er wenn der Ordner nicht existiert den Ordner, soweit in Ordnung, Wenn der Ordner jedoch bereits existiert ändert er nicht den Label  Text zu "Ordner existiert bereits" Nur unten im Konsolenbereich wird mir angezeigt das der Ordner nicht existiert.

Habt ihr ne Idee wo ich mich verhaspelt habe ?


Viewing all articles
Browse latest Browse all 2314


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