Wix: Как скопировать все файлы из папки на DVD без использования Heat - PullRequest
0 голосов
/ 19 февраля 2020

На нашем установочном DVD у нас есть структура папок, подобная следующей. Файлы в _ThirdPartyLicenses содержат много файлов, которые необходимо скопировать в нашу папку установки во время установки. Я не хочу использовать Heat для сбора файлов в папке _ThirdPartyLicenses, поскольку мы обычно замораживаем выпуск перед добавлением лицензий в папку «_ThirdPartyLicenses» на DVD-диске в рамках наших процедур доставки. Нет указателей на эти файлы из меню «Пуск» или из приложений. Их нужно просто скопировать во время установки, чтобы соответствовать лицензионным соглашениям.

_ThirdPartyLicenses
Components\ComponentA.msi
Components\ComponentB.msi
MyProduct.Setup.exe

В загрузчике MyProduct.Setup.exe у меня есть MSI, которому нужно скопировать все файлы в _ThirdPartyLicenses с DVD-диска в папку C: \ Program Files \ MyProduct \ ThirdPartyLicenses, используя свойство CopyFile в Wix. Любая идея, как заставить это работать?

Во время установки установщик жалуется, что путь «[WixBundleOriginalSourceFolder] _ThirdPartyLicenses» недопустим. Любая идея, как получить его для разрешения свойства [WixBundleOriginalSourceFolder] во время установки?

<Fragment>
  <Property Id="THIRDPARTYSOURCEFOLDER" Value="[WixBundleOriginalSourceFolder]_ThirdPartyLicenses" />
  <Directory Id="TARGETDIR" Name="SourceDir">
    <Directory Id="ProgramFiles64Folder">
      <Directory Id="MYPROGRAMFOLDER" Name="MyProgram" >
        <Directory Id="THIRDPARTYDESTFOLDER" Name="ThirdPartyLicenses">
      </Directory>
    </Directory>
  </Directory>
</Fragment>

<Fragment>
  <ComponentGroup Id="ThirdPartyFiles" Directory="THIRDPARTYDESTFOLDER">
    <Component Id="CopyThirdPartyFiles" Guid="{c0426971-3293-4188-a221-373b8a5bf2a9}">
      <CopyFile Id="CopyThirdPartyFiles" 
                SourceProperty="THIRDPARTYSOURCEFOLDER" 
                SourceName="*"
                DestinationProperty="THIRDPARTYDESTFOLDER" />
    </Component>
  </ComponentGroup>
</Fragment>
...