如何为每个用户或每台计算机安装创建单个程序包

问题描述:

我尝试了为每个用户和每台计算机创建单个MSI的所有方案。下面是我的解释:根据每台机器安装https://blogs.msdn.microsoft.com/windows_installer_team/2009/09/02/authoring-a-single-package-for-per-user-or-per-machine-installation-context-in-windows-7/如何为每个用户或每台计算机安装创建单个程序包

<Property Id='ALLUSERS' Value='2' /> 
    <Property Id='MSIINSTALLPERUSER' Value='{}' /> 

结果与MSIINSTALLPERUSER的价值是每个用户安装“1”的结果。

现在我正在这决定了用户自定义动作是否是管理员或不是,要改变属性值是{}或1

我的问题是“ALLUSER”的值更改为1在安装期间记录之前。在日志中创建显示:

"PROPERTY CHANGE: Modifying ALLUSERS property. Its current value is '2'. Its new value: '1'." 

,但是当我通过直接向MSIPERUSER值运行“1”的日志显示:

"PROPERTY CHANGE: Deleting ALLUSERS property. Its current value is '2'." 

所以,请帮助我,我怎么可以开发一个单一的安装程序均为admin用户和普通用户。

在此先感谢。

基本上你遵守规则在这里:

https://msdn.microsoft.com/en-us/library/windows/desktop/dd408068(v=vs.85).aspx

的这里一点是,Windows决定根据用户的权限如何安装工作,而不是你的自定义操作。这就是房地产价值改变的原因。按照这些规则,它只是起作用。

+0

如果我们关注该页面,安装程序将返回错误为“您没有足够的权限”。 – Swetha

+0

ICE105验证说什么?什么是InstallPrivileges setiing? https://msdn.microsoft.com/zh-cn/library/aa367800(v=vs.85).aspx – PhilDW

+0

我正在使用WixUI_advanced对话框引用,并未将InstallPrivilege设置为Package。 – Swetha