Я разрабатываю файл setup.exe для своего приложения, который копирует его в папку автозагрузки по следующему пути:

cd %PROGRAMDATA%\Microsoft\Windows\Start Menu\Programs\Startup

Теперь я беспокоюсь, может ли этот путь измениться в разных версиях Windows. Кто-нибудь знает, всегда ли путь к папке запуска всегда один и тот же? Есть лучший способ настроить приложение для запуска каждой загрузки?

Любой совет будет очень полезным,

Спасибо

2 ответа2

1

Приоритет запуска в Windows выглядит следующим образом: от начала до конца и до начала:

HKEY_LOCAL_MACHINE\ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ Windows \ CurrentVersion \ Runonce HKEY_LOCAL_MACHINE\ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ Explorer \ Запуск HKEY_LOCAL_MACHINE\ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Запускать \ \ \ \ \ \ \ \ \ Windows \ Windows \ Запустите HKEY_CURRENT_USER \ Программное обеспечение \ Microsoft \ Windows \ CurrentVersion \ Выполнить HKEY_CURRENT_USER \ Программное обеспечение \ Microsoft \ Windows \ CurrentVersion \ RunOnce SystemDrive \ Документы и настройки \ Все пользователи \ Пуск \ \ \ Startup SystemDrive \ Documents and Settings \ имя пользователя \ Пуск \ Меню \ Программы \Запускать

Последние два пункта относятся к дням Windows XP. Которые относятся к:% PROGRAMDATA%\Microsoft\Windows\ Пуск \ Меню \ Программы \ Автозагрузка

И да, чтобы ответить на ваш вопрос, Windows Vista, 7, 8 и 10 используют одну и ту же папку запуска.

Поэтому, если вы хотите, чтобы ваша программа запускалась первой, всегда используйте: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run В противном случае папка запуска будет загружаться после загрузки всего остального.

0

Вы хотите искать папки из пространства имен оболочки, например, передавая FOLDERID_Startup (или FOLDERID_CommonStartup) в функции для поиска папки из пространства имен оболочки.

Записи реестра (HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run и другие), упомянутые в другом ответе, являются лучшими вариантами. Смотрите здесь

У Microsoft также есть статья, описывающая относительный порядок различных методов.

(Преимущество папки запуска в том, что пользователь может легко управлять)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .