我有一个winform应用程序,我正在运行一个单独的bat文件。 一旦该bat文件启动,它就会调用mysql桌面服务器引擎的setup.exe。 setup.exe打开并开始运行,但仅持续1秒钟,然后退出而没有任何警告或错误。 bat文件继续处理脚本的其余部分。
为什么会这样?如果我单独运行bat文件(而不是c#),它会等待安装完成,然后继续运行脚本。
感谢您的帮助
添加代码:
System.Diagnostics.Process proc = new System.Diagnostics.Process();
if (File.Exists(@"C:\Program Files\Database setup\install.bat"))
{
MessageBox.Show("Please restart the machine after installation is finished.");
proc.StartInfo.FileName = @"C:\Program Files\Database setup\install.bat";
proc.Start();
//PROBLEM WITH INSTALLATION of SQLSERVER (INSTALL QUITS)
}
答案 0 :(得分:0)
在运行setup.exe进程后立即在批处理脚本中,添加echo %ERRORLEVEL%
以打印出返回代码。如果你得到的不是1或0,你可以谷歌。
要寻找的另一件事是它是否在两次执行中都具有相同的环境设置。
在批处理文件中,在启动setup.exe之前运行set
。这将打印出所有环境设置。比较手动运行它与C#进程运行的值,看看是否有任何差异。