Hallo Com.,
Ich habe ein Consolenevent in meiner Forum eingebaut und dafür folgenden Code verwendet:
Spoiler anzeigen
Ich möchte aber in der Forum 2 Consolenfenster haben, bzw. 2 Consolenanwendungen, ich habe versucht das Problem so zu lösen:
Spoiler anzeigen
Nur wenn ich erst auf Button4 drücke und dann auf Button5 (oder andersrum) wird nur die RichTextBox genommen, die vom ersten Button angewählt wurde und nicht die andere. Wie kann ich dieses Problem lösen?
Ich habe ein Consolenevent in meiner Forum eingebaut und dafür folgenden Code verwendet:
VB.NET-Quellcode
- Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
- StartProcess()
- p.StandardInput.WriteLine("netstat")
- End Sub
- Sub StartProcess()
- p = New Process
- p.StartInfo.FileName = "cmd.exe" '"mcrcon.exe"
- 'p.StartInfo.Arguments = "-t -c -H " & host & " -P " & port & " -p " & password
- p.StartInfo.WorkingDirectory = ""
- p.StartInfo.CreateNoWindow = True
- p.StartInfo.UseShellExecute = False
- p.StartInfo.RedirectStandardOutput = True
- p.StartInfo.RedirectStandardInput = True
- AddHandler p.OutputDataReceived, AddressOf WriteProcessOutput
- p.Start()
- p.BeginOutputReadLine()
- End Sub
- Private Sub WriteProcessOutput(ByVal sender As Object, ByVal e As DataReceivedEventArgs)
- If e.Data IsNot Nothing Then
- Me.Invoke(Sub() RichTextBox1.AppendText(e.Data & Environment.NewLine))
- End If
- End Sub
Ich möchte aber in der Forum 2 Consolenfenster haben, bzw. 2 Consolenanwendungen, ich habe versucht das Problem so zu lösen:
VB.NET-Quellcode
- Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
- StartProcess2()
- p.StandardInput.WriteLine("ipconfig")
- End Sub
- Sub StartProcess2()
- p = New Process
- p.StartInfo.FileName = "cmd.exe" '"mcrcon.exe"
- 'p.StartInfo.Arguments = "-t -c -H " & host & " -P " & port & " -p " & password
- p.StartInfo.WorkingDirectory = ""
- p.StartInfo.CreateNoWindow = True
- p.StartInfo.UseShellExecute = False
- p.StartInfo.RedirectStandardOutput = True
- p.StartInfo.RedirectStandardInput = True
- AddHandler p.OutputDataReceived, AddressOf WriteProcessOutput2
- p.Start()
- p.BeginOutputReadLine()
- End Sub
- Private Sub WriteProcessOutput2(ByVal sender As Object, ByVal e As DataReceivedEventArgs)
- If e.Data IsNot Nothing Then
- Me.Invoke(Sub() RichTextBox2.AppendText(e.Data & Environment.NewLine))
- End If
- End Sub
Nur wenn ich erst auf Button4 drücke und dann auf Button5 (oder andersrum) wird nur die RichTextBox genommen, die vom ersten Button angewählt wurde und nicht die andere. Wie kann ich dieses Problem lösen?