WIX:如何区分Administrators组的成员和内置Administrators

|| 对于管理员和普通用户(不同的安装目录等),我的安装应具有不同的行为。同时,它应该适用于XP,Vista和Windows 7。 安装程序的运行方式与XP和Vista相同,但无法在Windows 7上检测到管理员用户。 我将MSIUSEREALADMINDETECTION设置为1,以确保仅为管理员用户设置了Privileged。
<Property Id=\"MSIUSEREALADMINDETECTION\" Value=\"1\" />
作为管理员用户,以下情况在Vista上不会失败,但在Vista上会失败
<Condition Message=\"Not Privileged\">Privileged</Condition>
这是测试项目(我知道它不完整:)
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<Wix xmlns=\"http://schemas.microsoft.com/wix/2006/wi\">
  <Product Id=\"0b241708-eb30-4bd9-9906-983f228ee2a6\" Name=\"wixTest01\" Language=\"1033\" Version=\"1.0.0.0\" Manufacturer=\"wixTest01\" UpgradeCode=\"1093efb2-75d0-499a-8050-99adfc8ae7c2\">
    <Package InstallerVersion=\"200\" Compressed=\"yes\" />

    <UI>
      <UIRef Id=\"WixUI_InstallDir\" />
    </UI>

    <Property Id=\"MSIUSEREALADMINDETECTION\" Value=\"1\" />
    <Condition Message=\"Privileged\">Privileged</Condition>

  </Product>
</Wix>
更新: 我刚刚找到了这个: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Admin-check-in-Win-2008-td4557002.html 我在Vista上使用内置的Administrator帐户,在Windows 7上使用创建的admin(Administrators组的成员)。我认为这些帐户是相同的,但事实并非如此。 内置管理员的属性Privileged设置为1,而Administrators组的成员则没有。 似乎无法检测到Administrators组的成员?     
已邀请:
如您链接到的线程中所述,这是启用UAC时的标准行为。在获得UAC同意提示后,Administrators组的成员只能按需获得提升的权限;在其他时间,他们几乎是标准用户(或多或少)。     
不必担心为
AdminUser
属性设置for3ѭ。 我使用以下代码:
<Condition Message=\"Privileged\">
    <![CDATA[Installed OR Privileged]]>
</Condition>
但是,由于Vista和Windows 7具有“过肩”的身份验证(请参阅将Windows Installer与UAC MSDN文档一起使用),在InstallUISequence期间用户没有提升的特权,因此您会遇到问题。 例如,一个标准用户运行安装程序,并且仅当他们按下\“ Install \”按钮(带有UAC盾)时,才会提示他们输入管理凭据,因此您不知道管理员是否要提供它们。在安装过程的早期。     

要回复问题请先登录注册