WiX: Как зарегистрировать приложение для запуска при запуске Windows? - PullRequest
24 голосов
/ 27 июня 2009

Я изучаю распространение настольных приложений .NET с MSI, сгенерированным WiX.

Пока все отлично работает. Но у меня есть несколько вопросов, с которыми гугл не может помочь.

Каков рекомендуемый способ регистрации приложения для запуска при запуске Windows (в WiX)?

Какой WixUI я могу использовать и как?

Примечания:

  • Приложение не является службой Windows и не должно быть зарегистрировано как таковое.
  • Было бы неплохо позволить пользователю отключить эту опцию в процессе установки.

Заранее спасибо!

Ответы [ 3 ]

41 голосов
/ 27 июня 2009

Я обнаружил это с помощью Google (при условии автоматического запуска программы через реестр); это также включает добавление пользовательского интерфейса. Не забывайте, что вы должны также предоставить возможность за пределами настройки включить / отключить автозапуск.

Основной Wix для него:

  <Property Id="ASSISTANCE_START_VIA_REGISTRY">1</Property>

  <!-- Auto-start via Registry -->
  <Component Id="MerliniAssistanceAutostart" Guid="Place-your-own-GUID-here">
    <RegistryValue Id="MerAs.rst" Root="HKMU" Action="write"
                   Key="Software\Microsoft\Windows\CurrentVersion\Run"
                   Name="Merlinia Assistance Client"
                   Value="[INSTALLDIR]Assistance.exe"
                   Type="string" />
    <Condition>ASSISTANCE_START_VIA_REGISTRY</Condition>
  </Component>

  <ComponentRef Id="MerliniaAssistanceAutostart" />
12 голосов
/ 27 июня 2009

Загляните в реестр на HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. Если вы хотите, чтобы он запускался для каждого пользователя, посмотрите в HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. Если вы хотите, чтобы он запускался при запуске Windows, не требуя от пользователя входа в систему, это служба.

0 голосов
/ 27 июня 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...