You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VB Express 2017的TextBox中显示cmd命令输出

VB 2017 Express执行CMD命令并显示输出到TextBox的示例代码

以下是适配VB Express 2017的代码示例,使用Process类执行CMD命令(如dir、ping),并将输出异步显示在WinForms的TextBox控件中:

准备工作

  1. 在窗体上添加一个TextBox控件(命名为txtOutput),设置其Multiline属性为True,ScrollBars属性为Vertical,确保能显示多行输出。
  2. 添加两个Button控件(分别命名为btnDir、btnPing),用于触发命令执行。

完整代码

Imports System.Diagnostics

Public Class Form1
    ' 执行指定CMD命令并获取输出
    Private Sub ExecuteCommand(command As String)
        txtOutput.Clear()

        Using proc As New Process()
            proc.StartInfo.FileName = "cmd.exe"
            proc.StartInfo.Arguments = $"/c {command}" ' /c 参数表示执行命令后自动关闭CMD窗口
            proc.StartInfo.UseShellExecute = False
            proc.StartInfo.RedirectStandardOutput = True
            proc.StartInfo.CreateNoWindow = True
            proc.StartInfo.StandardOutputEncoding = System.Text.Encoding.Default ' 解决中文乱码问题

            ' 绑定输出接收事件,异步读取输出
            AddHandler proc.OutputDataReceived, AddressOf Proc_OutputDataReceived

            proc.Start()
            proc.BeginOutputReadLine()
            proc.WaitForExit()
        End Using
    End Sub

    ' 处理命令输出,跨线程更新UI
    Private Sub Proc_OutputDataReceived(sender As Object, e As DataReceivedEventArgs)
        If Not String.IsNullOrEmpty(e.Data) Then
            txtOutput.Invoke(Sub() txtOutput.AppendText(e.Data & Environment.NewLine))
        End If
    End Sub

    ' 执行dir命令示例
    Private Sub btnDir_Click(sender As Object, e As EventArgs) Handles btnDir.Click
        ExecuteCommand("dir C:\Windows") ' 替换为目标目录路径
    End Sub

    ' 执行ping命令示例
    Private Sub btnPing_Click(sender As Object, e As EventArgs) Handles btnPing.Click
        ExecuteCommand("ping -n 4 www.microsoft.com") ' -n 4 指定发送4个数据包
    End Sub
End Class

关键说明

  • 使用Process类替代旧版Shell函数,适配.NET Framework 4.x(VB 2017默认使用的框架版本)
  • 异步读取输出避免UI线程卡顿,通过Invoke实现跨线程更新TextBox
  • 设置StandardOutputEncoding为Default,解决中文系统下的输出乱码问题
  • CreateNoWindow = True 避免弹出CMD窗口,UseShellExecute = False 允许重定向输出

内容的提问来源于stack exchange,提问作者Eric van Loon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 02:27:19