winfrom 弹出cmd窗口 执行命令
时间: 2023-10-18 21:02:55 浏览: 94
在WinForms中弹出cmd窗口并执行命令,可以通过使用`Process`类实现。下面是一个简单的示例:
首先,在Form中添加一个按钮和一个TextBox控件,Button用于触发弹出cmd窗口执行命令的操作,TextBox用于显示cmd窗口的输出结果。
然后,在Button的Click事件中添加以下代码:
```csharp
private void button1_Click(object sender, EventArgs e)
{
// 创建一个进程对象
Process process = new Process();
// 设置进程执行的命令行程序(cmd.exe)
process.StartInfo.FileName = "cmd.exe";
// 启用进程的Shell扩展
process.StartInfo.UseShellExecute = false;
// 指定进程输出流重定向
process.StartInfo.RedirectStandardOutput = true;
// 禁用进程显示窗口
process.StartInfo.CreateNoWindow = true;
// 启动进程
process.Start();
// 向cmd窗口发送命令
process.StandardInput.WriteLine("dir"); // 替换为你需要执行的命令
// 关闭输入流,表示命令已经发送完毕
process.StandardInput.Close();
// 等待进程执行完毕
process.WaitForExit();
// 读取cmd窗口的输出结果
string output = process.StandardOutput.ReadToEnd();
// 在TextBox中显示输出结果
textBox1.Text = output;
}
```
在这个示例中,我们创建了一个Process对象,设置了进程的属性,包括要执行的命令行程序、是否启用Shell扩展、是否重定向输出流等。
然后启动进程并向cmd窗口发送命令,并关闭输入流表示命令发送完成。
最后,等待进程执行完毕,读取cmd窗口的输出结果并显示在TextBox中。你可以根据实际需求修改和扩展这个示例。
阅读全文