Проблемы с аргументами Wix - PullRequest
2 голосов
/ 20 мая 2011

У меня странная проблема с Wix

Я создаю ярлык для инструмента конфигурации для службы Windows.

Я хочу передать файл конфигурации для службы Windows в качестве аргумента инструменту конфигурации.

Таким образом, у меня есть компонент, который устанавливает службу Windows, он отлично работает, и еще один, который устанавливает инструмент конфигурации.

Код быстрого доступа ниже:

            <Shortcut Id="LaunchConfigTool" WorkingDirectory="WINDOWSSERVICE" Arguments="[#fil21620445E80831C7F56986614D268A22]" 
                      Name="Service Configuration Tool" Directory="ProgramMenuDir" Advertise="yes"/>
          </File>

Это не работает, а именно, ярлык не запускает инструмент конфигурации. Тем не менее, фрагмент ниже работает нормально. Само собой разумеется, что ссылка выше относится к service.exe.config.

            <Shortcut Id="LaunchConfigTool" WorkingDirectory="WINDOWSSERVICE" Arguments="service.exe.config" 
                      Name="Service Configuration Tool" Directory="ProgramMenuDir" Advertise="yes"/>
          </File>

Я записал действия установщика в файл, и оба имеют следующий вывод

    MSI (s) (BC:1C) [11:32:27:947]: Executing op: ShortcutCreate(Name=tcet7-ht|Service Configuration Tool,Feature=ProductFeature,Component={B9ED30DE-087D-393E-950B-C67877E51B8A}[~]2,,Arguments=C:\Program Files\Housekeeping\Windows Service\service.exe.config,WorkingDir=C:\Program Files\Housekeeping\Windows Service\,,,,,,,,,)

Какие-либо идеи со ссылкой не работают?

1024 * ТИА *

1 Ответ

2 голосов
/ 20 мая 2011

Попробуйте заключить аргумент в кавычки:

Arguments="&quot;[#fil21620445E80831C7F56986614D268A22]&quot;"

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

...