我想做静音安装。我知道执行“msiexec.exe / qn”的命令,但如果我的应用程序没有以管理员身份运行,我就不能这样做。 注意: - 我的msi安装程序是使用WIX工具集
创建的Process process = new Process
{
StartInfo =
{
FileName = @"msiexec.exe",
Arguments = string.Format(@"/i ""E:\Build 16\ColiboConnect.msi"" /qn"),
UseShellExecute = false,
RedirectStandardInput = true,
RedirectStandardOutput = true,
RedirectStandardError = true,
CreateNoWindow = false
}
};
process.Start();
process.WaitForExit();
答案 0 :(得分:1)
您正在请求安装MSI,因此MSI不会显示任何UI - 也不会显示UAC对话框。
您的父进程必须已使用提升的权限运行,或者您必须从Windows请求提升并使用权限令牌运行新进程。
答案 1 :(得分:0)
我们使用Windows服务解决了我们的问题。我们的应用程序将下载新的msi,然后调用WCF服务,传递安装程序的路径,服务将安装新版本没有任何问题,因为我们的服务在本地帐户系统下运行,我认为这是唯一支持的解决方案