WIX - получение исходных файлов по пути к переменной среды - PullRequest
2 голосов
/ 02 августа 2011

Я новичок в WIX, пытаюсь создать MSI с деревом компонентов.

  1. Установщик должен установить все сборки в папке C:\ProgramFile\MyDir\MyApp.
  2. Путь чтения из переменной среды с именем MyFolder.

    <WixVariable Id ="MyFolder" Value="[%MyFolder]"/>
    
  3. Ниже приведен код, из которого читаются сборки.

    <Directory Id="TARGETDIR" Name="SourceDir">
    <Directory Id="ProgramFilesFolder" Name="ProgramFilesFolder">
    <Directory Id="ProgramFilesFolder.MyDIR" Name="MyDIR">
    <Directory Id="PROGRAMFILESFOLDER.MyDIR.MyApp" Name="MyApp">
    
    <Component Id="Component.aaa.dll" Guid="guid1">
      <File Id="aaa.dll" Source="..\..\OutPut\aaa.dll" />
    </Component>
    
  4. Теперь я хотел бы получить сборки из папки MyFolder, которая является переменной среды, и добавить ее в мой источник

    <Directory Id="MyFolder" Name="MyFolder" SourceName="MyFolder">
      <Component Id="Component.bbb.exe" Guid="guid2">
        <File Id="bbb.exe" Name="bbb.exe" Vital="yes" Source=MyFolder + bbb.exe />
      </Component>
    </Directory>
    

Я получаю сообщение об ошибке компиляции, говорящее, что этоневозможно найти bbb.exe.

Пожалуйста, дайте мне знать, где я иду не так.

1 Ответ

5 голосов
/ 02 августа 2011

См. Документацию Препроцессор . Я думаю, что вы можете просто сделать это, чтобы получить bbb.exe из пути, определенного в переменной среды:

<File Id="bbb.exe" Name="bbb.exe" Vital="yes" Source="$(env.MyFolder)bbb.exe" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...