再会!我正在开发安装程序,它使用 Process.Start 为我的软件安装额外的依赖项。
foreach dependency:
var process = System.Diagnostics.Process.Start(processStartInfo);
process.WaitForExit();
问题是当另一个 msi 安装运行时,WaitForExit 挂起(当我关闭另一个 msi 安装时,WaitForExit 也退出)。
我不能使用超时,因为安装时间不同,依赖项也不同。
有什么方法可以处理这种情况并正确终止进程(实际上我想知道是依赖安装还是挂起)?非常感谢。
解决方案:在我的情况下,通过检查“msiexec”进程是否正在运行来解决问题。