Настройка установщика для включения / отключения запуска при запуске Windows - PullRequest
2 голосов
/ 08 мая 2019

Я пытаюсь установить приложение для Windows 8.1 и более поздних версий, чтобы его можно было включить и отключить для запуска в Windows при запуске как из TaskManager, так и из Windows> Настройки> Приложения. Реестр создается так:

<RegistryValue Id="myProgram.exe" 
               Root="HKLM"
               Action="write"
               Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Run" 
               Name="My Program" 
               Value="[INSTALLFOLDER]myProgram.exe" 
               Type="string"/>

Это успешно добавляет программу в список запускаемых приложений, и ее можно отключить / включить из диспетчера задач, но нельзя управлять из Windows> Настройки> Приложения. Приложение отображается в списке параметров Windows, но вы можете сказать, что включение / отключение ничего не меняет, зайдя в реестр и увидев, что значение в HLM \ software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ StartupApproved \ Run \ Моя программа не меняется. Почему настройки Windows не могут управлять этим запуском приложения?

Кроме того, если мы хотим предварительно ввести значение для включения / выключения запуска в HLM \ software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ StartupApproved \ Run \ My Program, какое двоичное значение мы будем использовать для каждого параметра?

Ответы [ 2 ]

3 голосов
/ 09 мая 2019

По данным этого веб-сайта https://winaero.com/blog/how-to-add-or-remove-startup-apps-in-windows-10/ системная настройка «Современные» приложения запуска применяется только к ключу запуска в HKCU.

Я не тестировал эту статью.Возможно, вы захотите использовать инструменты профилирования, такие как снимок реестра / diff и / или processsexplorer, чтобы проверить, что делает этот новый экран настроек.

0 голосов
/ 10 мая 2019

HKCU : я не уверен, и я не могу проверить прямо сейчас. Попробую несколько подсказок. Как указывает Крис: почему вы пишете HKLM? Измените его на HKCU и посмотрите, работает ли оно:

<RegistryValue Id="myProgram.exe" 
           Root="HKCU"
           Action="write"
           Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Run" 
           Name="My Program" 
           Value="[INSTALLFOLDER]myProgram.exe" 
           Type="string"/>

Автозапуск : есть инструмент от SysInternals, который можно использовать при проверке проблем с автозапуском: https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns. и прямой запуск из источника ссылка . При использовании этого инструмента кажется, что при отключении элемента в списке они перемещаются в подраздел, называемый AutorunsDisabled:

AutorunsDisabled

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