VisualBasic Erstellte Buttons starten gewähltes Programm nicht

KingLM97

Lieutenant
Registriert
Mai 2012
Beiträge
908
Hallo,

ich bin gerade am schreiben eines Programms, welches Anhand von einem vorher angegeben Pfad mehrere Buttons erstellt. Über diesen Pfad wird ein Programm eingelesen, welches über den entsprechenden Button starten soll. Funktioniert auch, jedenfalls mit nur einem Button. Bei mehreren Buttons startet er immer nur das letzte hinzugefügte Programm.

Code:
Public Class Form1
    Public nameProg As String
    Public Parameter As String
    Dim Knopf As New Button

    Private Sub ButtonHinzu_Click(sender As Object, e As EventArgs) Handles ButtonHinzu.Click
        Try
            Knopf = New Button
            Dim tab As Integer = 1
            Knopf.Text = TextBoxPfad.Text
            Knopf.TextImageRelation = TextImageRelation.TextBeforeImage
            Knopf.Image = Icon.ExtractAssociatedIcon(nameProg).ToBitmap
            TableLayoutPanelButtons.Controls.Add(Knopf)
            Knopf.SetBounds(1, 1, 500, 500)
            Knopf.Name = nameProg
            Knopf.TabIndex = tab
            tab = tab + 1
            AddHandler Knopf.Click, AddressOf ProgrammStarten
        Catch fehler As Exception
            If TextBoxPfad.Text = "" Then
                MsgBox("Bitte ein Programm auswählen.")
            End If
            If TextBoxPfad.Text = OpenFileDialog1.SafeFileName Then
                MsgBox("Maximale Anzahl an Programmen erreicht.")
            End If
        End Try
    End Sub

    Private Sub ProgrammStarten(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Parameter = TextBoxParameter.Text
        Process.Start(Knopf.Name, Parameter)
        'MsgBox(nameProg)
    End Sub

    Private Sub TextBoxPfad_MouseDoubleClick(sender As Object, e As MouseEventArgs) Handles TextBoxPfad.MouseDoubleClick
        If OpenFileDialog1.ShowDialog = DialogResult.OK Then
            TextBoxPfad.Text = System.IO.Path.GetFileNameWithoutExtension(OpenFileDialog1.FileName)
            nameProg = System.IO.Path.GetFullPath(OpenFileDialog1.FileName)
        End If
    End Sub
End Class

Ich verstehe nicht, wieso er es nicht macht. Irgendwo ein Denkfehler?
Im Anhang das ganze Projekt.
 

Anhänge

  • Schnellstart V2.7z
    227,6 KB · Aufrufe: 225
Und wie?
 
Zurück
Oben