我已经创建了一个刻录软件包安装程序,可以安装几个MSI,即perMachine。捆绑包在安装时确实正确提升。如果我使用/ uninstall命令行运行bundle exe,它会在卸载时提升。如果我从Windows 10的应用程序&功能窗口,得到提升(这是因为无论您的捆绑设置如何,Apps& Features似乎都会盲目提升。)
但是,如果我从“控制面板”"程序和功能"对话框,卸载不会提升(即使日志似乎表明它确实如此)。有问题的安装程序确实需要提升才能做一些事情(比如干净地停止服务)。
Bundle.wxs片段:
<Bundle Name="Test Bundle"
Version="1.0.0.0"
Manufacturer="My Company, Inc."
Copyright="Copyright 2016 My Company, Inc."
IconSourceFile="Resources\Icons.ico"
DisableModify="yes"
UpgradeCode="$(var.UpgradeCode)">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkSidebarLicense">
<bal:WixStandardBootstrapperApplication
LogoFile="Resources/logo.png"
LogoSideFile="Resources/logoside.png"
ThemeFile="Resources/HyperlinkSidebarTheme.xml"
LocalizationFile="Resources/HyperlinkTheme.wxl"
LicenseUrl="" />
</BootstrapperApplicationRef>
<Chain>
<MsiPackage Id="MyMsi.msi"
SourceFile="$(var.SolutionDir)Installer\MyMsi.msi"
Compressed="yes"
ForcePerMachine="yes"
Vital="yes">
</MsiPackage>
<MsiPackage Id="MyOtherMsi.msi"
SourceFile="$(var.SolutionDir)Installer\MyOtherMsi.msi"
Compressed="yes"
ForcePerMachine="yes"
Vital="yes">
</MsiPackage>
</Chain>
</Bundle>
我已将两个MsiPackage设置为&#34; ForcePerMachine&#34;确保捆绑提升。 MSI的两个包元素都有InstallScope =&#34; perMachine&#34;组。如果我自己安装MSI,则从程序和功能中卸载时它们都会提升。
我在这里有点不知所措。
答案 0 :(得分:0)
好的,EXE显然是自动从ARP升级(MSI不在这里。这在MSI的卸载程序日志中得到了证实:
MSI(s)(9C:F4)[17:20:38:470]:MSI_LUA:不需要凭据提示,用户是管理员