我正在尝试在c#中创建一个调用特殊命令行的gui。
using System.Diagnostics;
Process test = new Process();
test.StartInfo.FileName = "start apps.lp asd-3 chmod -2"; test.StartInfo.UseShellExecute = false;
test.StartInfo.Arguments = "/all";
test.StartInfo.RedirectStandardOutput = true;
test.Start();
textBox1.Text = test.StandardOutput.ReadToEnd();
我得到的错误是:
win32异常未处理
system.dll中出现system.componentmodel.win32exception
答案 0 :(得分:0)
解决方案经过长时间搜索后找到...超过2周的搜索...我找到了正确的解决方案。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Diagnostics;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
ProcessStartInfo psi = new ProcessStartInfo("net", "help");
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.CreateNoWindow = false;
var proc = Process.Start(psi);
string s = proc.StandardOutput.ReadToEnd();
textBox1.Text = s;
}
private void button2_Click(object sender, EventArgs e)
{
ProcessStartInfo psi = new ProcessStartInfo("cmd");
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.CreateNoWindow = true;
psi.RedirectStandardInput = true;
var proc = Process.Start(psi);
proc.StandardInput.WriteLine(@"dir /w);
proc.StandardInput.WriteLine("exit");
string s = proc.StandardOutput.ReadToEnd();
textBox1.Text = s;
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
}
}
我希望这能帮助有需要的人。
但我仍然有同样的问题!与/ s :(为什么?!!? 我想做一个dir / s就是这样。 请帮忙
我最诚挚的问候。