我的同事写了这段代码。它只需要启动一个批处理文件并隐藏黑色窗口(这样用户就无法取消重新安装过程)。
System.Diagnostics.ProcessStartInfo procStartInfo =
new System.Diagnostics.ProcessStartInfo("cmd", "/c " + exePath + exeName + "_" + args[0] + ".bat");
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
procStartInfo.CreateNoWindow = true;
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.Start();
现在在一些PC上我们遇到了问题,即批处理文件无法正常运行。
只要我添加这些行,一切正常
string output = proc.StandardOutput.ReadToEnd();
System.Windows.Forms.MessageBox.Show(output);
proc.WaitForExit();
批处理文件包含以下4个命令:
taskkill /F /IM our.exe
taskkill /F /IM ourNA.exe
msiexec /x
msiexec /i
任何人都可以向我解释这个吗?