1

我正在 Visual Studios 2012 中使用 Wix 创建安装程序。下面是我的 product.wxs 代码。我收到“警告 ICE39:SummaryInfo 流中设置了'Admin Image'标志。应该只为管理包设置。” 我已将管理员映像从是更改为否并重建,它删除了警告,但我仍然无法在具有本地管理员权限并且也是域管理员的计算机上安装。但是,我可以将它安装在我的机器上,而且我不是域管理员,

我会上传图片,但还没有足够的代表。这是一个图片链接。

http://i656.photobucket.com/albums/uu290/chrizbahr/warning_zps12f388b2.png

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">


<?define ProductName="CHC Pedometer Sync"?>
  <?define ProductVersion="1.0.0"?>
  <?define ProductGUID="{6D234D2C-5F74-42A8-A9DA-14D684B2EAFC}"?>
  <?define ProductUpgradeCode="{DDDD43E0-DB34-4AD6-BF54-F6B12509E84F}"?>
  <?define Manufacturer="CHC Wellness"?>
  <Product Id="$(var.ProductGUID)"
           Name="$(var.ProductName)"
           Language="1033"
           Version="$(var.ProductVersion)"
           Manufacturer="$(var.Manufacturer)"
           UpgradeCode="$(var.ProductUpgradeCode)">
    <Package Id="*"
             Description="CHC Pedometer Sync Installer"
             Keywords="Installer"
             Manufacturer="$(var.Manufacturer)"
             SummaryCodepage="1252"
             InstallerVersion="200"
             Compressed="yes"
             InstallScope="perMachine"
             AdminImage="yes"
             InstallPrivileges="limited" />
    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
    <MediaTemplate EmbedCab="yes"/>
    <!--DIRECTORY STRUCTURE-->
    <Directory Id="TARGETDIR" Name="SourceDir">
      <!--PROGRAM FILES-->
      <Directory Id="ProgramFilesFolder" Name="PFiles">
        <Directory Id="CHCWellness" Name="CHC Wellness">
          <Directory Id="INSTALLDIR" Name="$(var.ProductName)" />
        </Directory>
      </Directory>
      <!--DESKTOP-->
      <Directory Id="DesktopFolder" Name="Desktop"/>
      <!--START MENU-->
      <Directory Id="ProgramMenuFolder" Name="Programs">
        <Directory Id="ProgramMenuDir" Name="$(var.Manufacturer)" />
      </Directory>
    </Directory>
    <DirectoryRef Id="INSTALLDIR">
      <Component Id="MainExecutable" Guid="{FB74004F-F250-4B3C-B38C-D96D5657A27A}">
        <File Id="File_MainExecutable" Source="..\PedometerSync\bin\Release\PedometerSync.exe" Vital="yes" DiskId="1" KeyPath="yes">
          <Shortcut Id="MainExeShortcutDesktop"
                  Name="$(var.ProductName)"
                  Directory="DesktopFolder"
                  Description="$(var.ProductName)"
                  WorkingDirectory="INSTALLDIR"
                  Advertise="yes"
                  Icon="icon.ico" />
        </File>
      </Component>
      <Component Id="InterfaceExe" Guid="{68C78DE2-BEBB-41D7-B9F6-313BCFC88F68}">
        <File Id="PedometerInterfaceEXE" Source="..\PedometerSync\bin\Release\PedometerInterface.exe" Vital="yes" DiskId="1" KeyPath="yes" />
      </Component>
      <Component Id="EXEConfig" Guid="{8D9F2744-C1E4-45E1-88E7-C3427200767E}">
        <File Id="File_ExeConfigFile" Source="..\PedometerSync\bin\Release\PedometerSync.exe.config" Vital="yes" DiskId="1" KeyPath="yes" />
      </Component>
      <Component Id="Newtonsoft" Guid="{09343B58-A247-4AA9-9A32-A6CB1BD9CC2F}">
        <File Id="file_newtonsoft.json.dll" Source="..\PedometerSync\bin\Release\Newtonsoft.Json.dll" Vital="yes" DiskId="1" KeyPath="yes" />
      </Component>
    </DirectoryRef>
    <!--SHORTCUTS-->
    <DirectoryRef Id="ProgramMenuDir">
      <Component Id="StartMenuShortcut" Guid="{E02282A4-0907-4EC6-A5B7-623E50B4E642}">
        <Shortcut Id="MainExeShortcut"
                  Name="$(var.ProductName)"
                  Description="$(var.ProductName)"
                  Target="[INSTALLDIR]PedometerSync.exe"
                  Icon="icon.ico"/>
        <RemoveFolder Id="RemoveStartMenuShortcutDir" On="uninstall"/>
        <RegistryValue Root="HKCU" Key="Software\$(var.Manufacturer)\$(var.ProductName)" Name="installed" Type="integer" Value="1" KeyPath="yes" />
      </Component>
    </DirectoryRef>
    <!--FEATURES LIST-->
    <Feature Id="Standard" Level="1">
      <ComponentRef Id="MainExecutable"/>
      <ComponentRef Id="InterfaceExe"/>
      <ComponentRef Id="EXEConfig"/>
      <ComponentRef Id="Newtonsoft"/>
      <ComponentRef Id="StartMenuShortcut"/>
    </Feature>
    <!--ADD UI ELEMENTS-->
    <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
    <UIRef Id="WixUI_InstallDirCustom" />
    <UIRef Id="WixUI_ErrorProgressText" />
    <!--CUSTOM IMAGES-->
    <WixVariable Id="WixUIBannerBmp" Value="banner.bmp" />
    <WixVariable Id="WixUIDialogBmp" Value="dialog.bmp" />
    <!--ICONS-->
    <Icon Id="icon.ico" SourceFile="icon.ico" />
  </Product>
</Wix>
4

1 回答 1

4

删除管理员属性。该属性不是指安装软件包需要管理员权限,而是指 MSI 是普通安装还是管理安装。

有关详细信息,请参阅帮助主题:

管理安装 (Windows)

Word Count Summary 属性 (Windows)(注意位 2 和位 3 的定义,它们分别与 AdminImage 和 InstallPrivileges 属性相关)

于 2013-03-15T14:05:28.023 回答