簡體   English   中英

在WiX中將文件安裝到Windows目錄

[英]Install files to windows directory in WiX

我正在嘗試將某些文件安裝到WindowsFolder。 這是標記:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Product Id="*" Name="MyAppSetup" Language="1033" Version="1.0.0.0" Manufacturer="abc" UpgradeCode="C313D73A-0FE5-496C-BD86-C21565BD65ED">
        <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

        <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
        <MediaTemplate />

        <Feature Id="ProductFeature" Title="MyAppSetup" Level="1">
            <ComponentGroupRef Id="ProductComponents" />
        </Feature>
    </Product>

    <Fragment>
        <Directory Id="TARGETDIR" Name="SourceDir">
            <Directory Id="WindowsFolder">
                <Directory Id="INSTALLFOLDER" />
            </Directory>
        </Directory>
    </Fragment>

    <Fragment>
     <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
      <Component Id="myApp1" Guid="13B43FD7-8D69-4D2E-BF03-B3EC5679D78A">
        <File Id="myApp.pdb" Source="myApp64.pdb" KeyPath="yes" />
      </Component>
      <Component Id="myApp2" Guid="23B43FD7-8D69-4D2E-BF03-B3EC5679D78A">
        <File Id="myApp.sys" Source="myApp64.sys" KeyPath="yes" />
      </Component>
      <Component Id="myApp3" Guid="33B43FD7-8D69-4D2E-BF03-B3EC5679D78A">
        <File Id="myAppsvc.exe" Source="myAppsvc64.exe" KeyPath="yes" />
      </Component>
      <Component Id="myApp4" Guid="43B43FD7-8D69-4D2E-BF03-B3EC5679D78A">
        <File Id="myAppsvc.pdb" Source="myAppsvc64.pdb" KeyPath="yes" />
      </Component>
     </ComponentGroup>
    </Fragment>
</Wix>

根據我的閱讀,此目錄元素指定要在WindowsFolder(在我的計算機C:\\ windows上)下安裝/復制的文件,但是,它將文件安裝到具有最大空間的D:\\。 所以問題是:我在目錄上做錯了什么?

事實證明,目錄重置是在使用/ a(admin)選項通過msiexec啟動msi時發生的。 這是一些日志條目顯示此:

PROPERTY CHANGE: Adding TARGETDIR property. Its value is 'D:\'.
PROPERTY CHANGE: Modifying WindowsFolder property. Its current value is 'C:\windows\'. Its new value: 'D:\'.
PROPERTY CHANGE: Adding APPLICATIONROOTDIRECTORY property. Its value is 'D:\'.

如果使用/ i選項啟動了msi,則目錄重置不會發生。 由於需要使用提升的特權來安裝軟件包,因此正確的方法是在提升的CMD控制台中使用/ i選項。 標記絕不是問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM