Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wix 无法以管理员身份运行msi_Wix - Fatal编程技术网

Wix 无法以管理员身份运行msi

Wix 无法以管理员身份运行msi,wix,Wix,我已经写了一个msi的注册表处理。所以,我必须以管理员的身份运行msi 当我直接单击并启动Msi时,我得到以下错误以修改ini文件“拒绝访问路径” 如果我从命令提示符(以管理员身份右键单击)启动msi,它可以正常工作 我尝试了下面所有的建议,但没有一个有效。请协助如何以管理员身份运行msi Package Id=“*”InstallerVersion=“200”Compressed=“yes”Platform=“$(var.Platform)”InstallPrivileges=“hiveled

我已经写了一个msi的注册表处理。所以,我必须以管理员的身份运行msi

当我直接单击并启动Msi时,我得到以下错误以修改ini文件“拒绝访问路径”

如果我从命令提示符(以管理员身份右键单击)启动msi,它可以正常工作

我尝试了下面所有的建议,但没有一个有效。请协助如何以管理员身份运行msi

Package Id=“*”InstallerVersion=“200”Compressed=“yes”Platform=“$(var.Platform)”InstallPrivileges=“hiveled”AdminImage=“yes”InstallScope=“perMachine”

CustomAction Id=“UpgradeSelectedVersion”BinaryKey=“CustomAction”DllEntry=“UpgradeSelectedVersion”Execute=“deferred”Impersonate=“no”

属性Id=“ALLUSERS”Value=“1”

Property Id=“alluser”Value=“2”请尝试以下操作:

<Property Id="MSIUSEREALADMINDETECTION" Value="1" />


否则,您可以将安装程序封装在一个wix管理的引导程序应用程序中,不过需要做更多的工作。然后将设置添加到清单文件。

该自定义操作被延迟,这意味着它必须在InstallExecuteSequence中运行,如果您具有每台机器的InstallScope和提升的权限,则应提升该操作并使用系统帐户运行

  • 不要弄乱ALLUSERS属性,因为WiX做的事情是正确的。每台机器的InstallScope和提升的权限将使其正常工作。如果你不小心把它变成了每用户安装搞乱了诱惑,那么它将不会被提升,它将失败

  • 在UI序列之后,您应该会看到一个UAC提升对话框。如果未看到此对话框,则安装将不会提升。同样,这可能与你更换诱惑者有关。如果您是在静默模式下安装,那么它也会失败,因为静默确实意味着静默,并且它不会显示提升对话框,您的CA也不会运行提升

  • 失败的自定义操作可能不是您发布的自定义操作,该操作会被延迟,因此会在提升提示后执行。如果在UI序列中有自定义操作,则不会提升该操作(除非从提升的提示符运行MSI),这样可以解释您看到的问题


  • 我删除了ALLUSERS属性,但它仍然没有在管理员权限下运行。我也看不到UAC提升对话框。我尝试了这个属性,但它仍然不能在admin下运行。WIX msi不是由WIX引导程序应用程序管理的,我对此一无所知。你能推荐一些bootstrapper应用程序的例子吗,因为到目前为止我还没有找到好的例子。谢谢