Thau
Mitglied
Hi,
ich versuche mit folgendem Sub ein programm zu starten
Jetzt würde ich es gerne hinbekommen, das dieses Programm in einem Extra Thread läuft.
Ich weiß das man das mit Dim ExtraThread As New Thread(AddressOf RunApp)
macht. Jetzt bekomm ich nur immer folgende Meldung:
ich versuche mit folgendem Sub ein programm zu starten
Code:
Private Sub RunApp(ByVal Befehl As String, ByVal Parameter As String)
Dim Run As Process = New Process
Run.StartInfo.FileName = Befehl
Run.StartInfo.Arguments = Parameter
Run.StartInfo.UseShellExecute = False
Run.StartInfo.RedirectStandardOutput = True
Run.StartInfo.RedirectStandardError = True
Run.StartInfo.RedirectStandardInput = True
Run.StartInfo.CreateNoWindow = True
Run.Start()
TextBox1.Text += Run.StandardOutput.ReadToEnd() & vbCrLf
TextBox1.Text += Run.StandardError.ReadToEnd() & vbCrLf
TextBox1.SelectionStart = Len(TextBox1.Text)
TextBox1.ScrollToCaret()
TextBox1.Focus()
Application.DoEvents()
Run.WaitForExit()
End Sub
Jetzt würde ich es gerne hinbekommen, das dieses Programm in einem Extra Thread läuft.
Ich weiß das man das mit Dim ExtraThread As New Thread(AddressOf RunApp)
macht. Jetzt bekomm ich nur immer folgende Meldung:
Ich hab zwar raus gefunden, das der Fehler daran liegt, das das Sub mehr als einen Parameter hat, aber es muss doch eine Möglichkeit geben, das das programm trotzdem in einem Extra Thread startet oder?Meldung hat gesagt.:Fehler bei der Überladungsauflösung, da keine zugreifbare "New" mit diesen Argumenten aufgerufen werden kann:
'Public Sub New(start As System.Threading.ParameterizedThreadStart)': Die Signatur der Private Sub RunApp(Befehl As String, Parameter As String)-Methode ist mit dem Delegaten "Delegate Sub ParameterizedThreadStart(obj As Object)" nicht kompatibel.
'Public Sub New(start As System.Threading.ThreadStart)': Die Signatur der Private Sub RunApp(Befehl As String, Parameter As String)-Methode ist mit dem Delegaten "Delegate Sub ThreadStart()" nicht kompatibel.