我尝试为我的应用程序创建安装程序。我想安装新版本,因此请卸载旧版本。求解命令行解决。
这是我的命令:
start /b msiexec.exe /x{79735753-F9D4-49AD-B29E-55C578390D25} /passive &cmd /k "e:22-08-2016setup.exe"
但卸载命令尚未完成,然后安装启动。我要卸载命令完成,然后deloy install命令。
如何做到这一点。
ps:我通过installshiedl 2015创建安装程序,如果有办法在安装前创建卸载,请为我展示,谢谢。
您可以使用process.waitforexit方法:
public void run2ndCmd()
{
String command = @"e:22-08-2016setup.exe";
ProcessStartInfo cmdsi = new ProcessStartInfo("cmd.exe");
cmdsi.Arguments = command;
Process cmd = Process.Start(cmdsi);
cmd.WaitForExit();
}
public void run1stCmd()
{
String command = @"/b msiexec.exe /x{79735753-F9D4-49AD-B29E-55C578390D25} /passive &cmd /k";
ProcessStartInfo cmdsi = new ProcessStartInfo("cmd.exe");
cmdsi.Arguments = command;
Process cmd = Process.Start(cmdsi);
cmd.WaitForExit();
}
public void runCmd()
{
run1stCmd();
//This will execute only when 1st command is finished
run2ndCmd()
}
除非您有充分的理由这样做,否则为什么不只是进行更正常的大型升级。这将安装新版本以及卸载该较旧版本的安装。我不确定您拥有哪个版本的安装速度,但这是文档:
http://helpnet.installshield.com/installshield2helplib/helplibrary/upgrademsimajoradvanced.htm