WIX 3.8 msiexec.exe/安静错误1603 [英] WIX 3.8 msiexec.exe /quiet Error 1603

查看:277
本文介绍了WIX 3.8 msiexec.exe/安静错误1603的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用WIX 3.8,Windows 8 Pro,Visual Studio 2013,并且正在执行静默安装.

I am using WIX 3.8, Windows 8 Pro, Visual Studio 2013, and I am doing a Silent Installation.

当我不使用/quiet参数运行时,Ir运行正常.但是当我输入"/quiet"时,什么也没发生.

When I run with no /quiet arguments, Ir runs OK. But when I put "/quiet", nothin happend.

/qn参数有一些问题...其他参数都运行正常.

There is some problems with /qn Arguments... Any other Arguments Runs OK.

string arg ="SetupWIX.msi";

string arg = " SetupWIX.msi";

            Process p = new Process();

            p.StartInfo.FileName = "msiexec.exe";
            p.StartInfo.CreateNoWindow = true;
            p.StartInfo.Arguments = "/i " + arg +" /quiet /l*v log.txt";
            p.Start();

它给出了错误3.

MainEngineThread返回1603.

MainEngineThread is returning 1603.

有什么想法吗?

火车

推荐答案

根据您发送给我的日志,需要提高您的MSI.

Based on the log you sent me, your MSI need to be elevated.

并非所有MSI都可以.大多数都做.如果您是在每台计算机的上下文中安装程序和/或在受限区域(程序文件,HKLM,Windows等)中进行写入,则需要提升权限.通常,当您双击一个MSI时,UI序列将以标准用户身份运行,然后当其转换为Execute序列时,如果需要,它将提示您提升高度.但是,当您运行/quiet时,它无法执行此操作,因此它只会失败.解决此问题的两种方法是提高调用过程或首先通告" MSI,以便系统信任它.在这种情况下,UI-> Exec提升会自动发生,而无需UAC请求.

Not all MSI's do. Most do. If you are installer in a per-machine context and/or writing to restricted areas ( Program Files, HKLM, Windows an so on ) you'll need elevation. Typically when you double click an MSI the UI sequence runs as standard user and then when it transitions to the Execute sequence it'll prompt for elevation if required. However when you run /quiet it can't do that so it just fails instead. The two ways around this are to elevate the calling process or first 'advertise' the MSI so that the system trusts it. In that case the UI->Exec elevation happens automatically without a UAC request.

这篇关于WIX 3.8 msiexec.exe/安静错误1603的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆