将所有cmd.exe文本显示到文本框

时间:2014-09-17 22:45:48

标签: vb.net ftp cmd output

我搜索高低,寻找一种方法来显示从FTP.exe到richtextbox的所有文本。到目前为止,我只能显示输出代码。我的想法是运行测试并显示并捕获到一个没有问题的文件,除了我似乎无法显示所有文本,就像你在Command.Hoping中看到的那样,看完所有文本。请帮助!!

这是他的代码:     Private Sub Rectangle1_Click(sender As Object,e As EventArgs)处理Rectangle1.Click         Dim p As New Process()         随着p             .StartInfo.Arguments =“ - s:c:\ dsl \ ftptest \ speed1.txt 65.40.220.20”             .StartInfo.CreateNoWindow = True             .StartInfo.FileName =“ftp”             .StartInfo.RedirectStandardError = True             .StartInfo.RedirectStandardOutput = True             .StartInfo.UseShellExecute = False             。开始()

        Dim StErr As StreamReader = .StandardError
        Dim StOut As StreamReader = .StandardOutput

        While (Not StOut.EndOfStream)
            Me.RichTextBox1.AppendText(String.Format("{0}", StOut.ReadLine() & vbCrLf))
        End While

        .WaitForExit()

    End With
End Sub

结束班

以下是代码的输出: 用户(65.40.220.20:(none)):哈希标记打印在ftp :( 2048字节/哈希标记)。

散列 得到test.1meg

cd上传 把test.1meg

接近 再见

以下是我要找的内容:

C:\ DSL \ FTPTEST>调用FTP -s:c:\ dsl \ FTPtest \ speed1.txt 65.40.220.20 连接到65.40.220.20。 220 -

此服务器仅作为DSL客户的EMBARQ Speedtest服务器提供。

禁止任何其他用途。

您可以使用匿名ftp登录并下载测试文件以确定您的速度。

您可以将相同的文件上传到上传目录以测试上传速度。  您只能上传以前从此服务器下载的文件。

您无法从上传目录下载任何内容。

请记住,一些ftp程序以每秒字节数为单位测量速度。  DSL速度以每秒位数为单位。一个字节有8位。  如果你能以每秒64千字节的速度下载,那么它就是一样的  每秒512千比特。

220 65.40.220.20 FTP服务器就绪 用户(65.40.220.20:(none)): 331匿名登录确定,将您的完整电子邮件地址作为密码发送。

230 -

此服务器仅作为DSL客户的EMBARQ Speedtest服务器提供。

禁止任何其他用途。

您可以使用匿名ftp登录并下载测试文件以确定您的速度。

您可以将相同的文件上传到上传目录以测试上传速度。  您只能上传以前从此服务器下载的文件。

您无法从上传目录下载任何内容。

请记住,一些ftp程序以每秒字节数为单位测量速度。  DSL速度以每秒位数为单位。一个字节有8位。  如果你能以每秒64千字节的速度下载,那么它就是一样的  每秒512千比特。

230授予匿名访问权限,适用限制。 FTP>哈希 哈希标记打印在ftp :( 2048字节/哈希标记)。 FTP>得到test.1meg 200 PORT命令成功 150打开test.1meg(1048576字节)的ASCII模式数据连接

# # #

ftp:以5.96秒175.94K字节/秒收到1048576字节。 FTP> FTP> cd上传 250 CWD命令成功 FTP>把test.1meg 200 PORT命令成功 150打开test.1meg

的ASCII模式数据连接 # # #

226转移完成。 ftp:1048576字节,以5.98秒175.23Kbytes /秒发送。 FTP> FTP>

1 个答案:

答案 0 :(得分:0)

我认为您可以将命令的输出重定向到文件。例如,在命令add的末尾(假设你有一个目录c:\ temp)

your command here > c:\temp\TestOutput.text

然后在您的程序中,添加一个文件系统观察程序以观察该文件,并在其更改时将其加载到文本框中。如果你这么做很多时间,那么你可能需要动态生成文件名并在不再需要时删除文件。