Как Вы копируете ряд файлов в нескольких использование мест Wix?

LINQPad Джо Албахари теперь поддерживает Sqlite: http://www.linqpad.net/Beta.aspx . Один инструмент LINQ, чтобы управлять ими всеми.

10
задан Keith Nicholas 13 October 2009 в 02:29
поделиться

2 ответа

Просто создайте несколько компонентов, которые ссылаются на один и тот же файл, но установите его в разные места. Единственная проблема заключается в том, что вы не можете использовать два элемента , ссылающихся на один и тот же файл, потому что они получат один и тот же автоматически сгенерированный идентификатор. Чтобы избежать этой проблемы, явно укажите для элементов файла разные идентификаторы.

<DirectoryRef Id="directory1">
   <Component Id="somefile-component1">
      <File Id="somefile-id1" Source="/path/to/somefile"/>
   </Component>
</DirectoryRef>

<DirectoryRef Id="directory2">
   <Component Id="somefile-component2">
      <File Id="somefile-id2" Source="/path/to/somefile"/>
   </Component>
</DirectoryRef>
11
ответ дан 3 December 2019 в 20:42
поделиться

У установщика Windows для этого есть собственная концепция, называемая «DuplicateFiles». Это работает, только если файлы на самом деле идентичны, но похоже, что вы этого хотите. В WIX вы реализуете это с помощью элемента CopyFile:

http://wix.sourceforge.net/manual-wix2/wix_xsd_copyfile.htm

Я на самом деле не пробовал, но это должно выглядеть примерно так

<Component Id='Manual' Guid='*' >
  <File Id='Manual' Name='Manual.pdf' Source='Manual.pdf' KeyPath='yes'>
    <CopyFile  Id='MyDuplicateFile1' DestinationProperty ='DesktopFolder'/>
  </File>
</Component>
7
ответ дан 3 December 2019 в 20:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: