У меня есть установщик Windows со сложным интерфейсом в WPF 4.5. Он использует несколько других файлов установщика MSI, созданных для нескольких других компонентов с использованием WIX, которые находятся внутри подкаталогов, например:
- InstallerRootDirectory
- WPF_Executable_File[The main installer]
- File_A
- File_B
- Directory_A
- Directory_B
- Directory_c
- MSI Installer 1
- Установщик MSI 2
Мне нужен установщик MSI Installer 2, созданный из WIX, чтобы иметь возможность копировать File_B
в директорию установки для этого компонента на целевой машине.
File_B
создается во время выполнения из WPF_Executable_File
и недоступен во время сборки MSI.
Могу ли я сделать это напрямую через WIX или мне нужно использовать настраиваемое действие?
Я пробовал следующий код, но он дает ошибку:
<Component Id="cmpA9616EB16BF74D7E90C6CD0D590A18ED" Directory="dir39B22699688E51DCD8DCBB99A47E835B" Guid="{DAD3EA2B-830F-482C-8F2F-EEB3C49E6373}">
<CopyFile SourceDirectory="../../[SourceDir]" SourceName="abc.xml" DestinationProperty="dir39B22699688E51DCD8DCBB99A47E835B" Id="copyfile1" />
</Component>
Ошибка: значение атрибута SourceDirectory не является допустимым идентификатором.
Использование SourceProperty также дает ту же ошибку.
<CopyFile>
- правильный путь в этой ситуации. Это поможет, если вы укажете полученную ошибку. - person Yan Sklyarenko   schedule 28.05.2014