C# 计算机本地化进程。开始()故障?
我对c#中的process类有一个问题,特别是在尝试启动命令提示符时。发生的情况是,无限多的cmd窗口打开,然后无限关闭,就像陷入了一个循环,尽管事实上没有;当我的电脑运行时,它会冻结我的电脑。然而,这只发生在我的64位vista上;这段代码(我将很快发布)在我的32位联想thinkpad上运行得非常好,我不知道为什么。请注意,标准输出线不是导致问题的原因;我试着把它们拿走,但没有成功。任何想法都将不胜感激C# 计算机本地化进程。开始()故障?,c#,process,C#,Process,我对c#中的process类有一个问题,特别是在尝试启动命令提示符时。发生的情况是,无限多的cmd窗口打开,然后无限关闭,就像陷入了一个循环,尽管事实上没有;当我的电脑运行时,它会冻结我的电脑。然而,这只发生在我的64位vista上;这段代码(我将很快发布)在我的32位联想thinkpad上运行得非常好,我不知道为什么。请注意,标准输出线不是导致问题的原因;我试着把它们拿走,但没有成功。任何想法都将不胜感激 using System; using System.Windows.Forms; us
using System;
using System.Windows.Forms;
using System.Diagnostics;
public class BuildByteArray
{
public static void Main()
{
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.UseShellExecute = false;
startInfo.RedirectStandardOutput = true;
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/c ipconfig";
MessageBox.Show("");
process.StartInfo = startInfo;
process.Start();
string output = process.StandardOutput.ReadToEnd();
MessageBox.Show(output);
process.WaitForExit();
}
}
您的应用程序是否编译为AnyCPU…请尝试编译为x86。如果它已经是32位/x86,那么Wow64重定向可能会成为阻碍。关于如何停止此操作的建议:也可以在StartInfo上尝试…CreateNoWindow=true。