我有调用 System.Diagnostics.Process 的 ac# exe 来在 cmd.exe 中运行一些命令,被动地安装几个安装程序。我一直在我的机器上测试它(64 位 win8,它工作得很好,但是当我在 32 位版本的 Windows XP 上运行 exe,程序只是跳过进程部分。没有抛出错误,它只是忽略它们。这是我的代码:
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo("CMD.exe", @"/C [command stuff]}");
psi.CreateNoWindow = true;
psi.UseShellExecute = false;
System.Diagnostics.Process diag = System.Diagnostics.Process.Start(psi);
diag.WaitForExit();
diag.Close();
这里可能有什么交易?我再一次没有错误,它只是忽略它。这很有趣,因为我可以在那里完成所有这些,只需运行 date 作为命令,它工作正常,但它不会运行安装所需的 msi 和 exe 文件。我找不到任何关于它在 64 位但不是 32 位工作的信息。谢谢!