Или автозагрузка нужных программ с подключаемых дисков, внешних носителей и сетевых шар.
Возникла тут производственная задача. Некоторые программы, необходимые для работы, находятся на сетевых шарах (либо подключаемых/шифрованных контейнерах), однако, после загрузки рабочей ОС, они должны автоматически запускаться у пользователя. Для примера, на работе это была программа управления станком.
Решая задачу, перелопатил гору литературы, но ничего готового не нашел. В результате написал свой "Менеджер отложенной автозагрузки".
Принцип работы простой, пользователь в этом самом "Менеджере" указывает путь до нужной программы, лежащей, например, на сетевом диске. "Менеджер" установлен на разделе с ОС, и запускается при ее загрузке. При запуске он проверяет через заданный интервал времени, появился ли нужный "экзешник". Если появился - запускает.
По умолчанию программа работает в портативном режиме (т.е. все настройки и список запускаемых программ, хранятся в директории с программой). Запуск без параметров открывает окно настройки, где можно добавить нужные для запуска задачи, а также в отдельном меню установить время проверки доступности задач, прочие параметры и добавить сам менеджер в автозагрузку ОС. Понятно, что менеджер должен находиться на разделе жесткого диска, который доступен ОС сразу после загрузки.
В качестве запускаемой задачи можно указать не исполняемый файл (exe, com, bat, cmd), но и документ, тогда он откроется в ассоциированной с ним программе.
Для исполнения задач, необходимо запустить менеджер с параметром командной строки /run

Основное окно настроек

Опции "Менеджера отложенной автозагрузки"

Окно добавления/редактирования задачи
Cправка по параметрам командной строки
StartupDelayed
/help
StartupDelayed [/run] [/d|confdir <путь>]
/help
- эта справка/run
- выполнение задач/d
- запускать в "не-портативном режиме" (конфигурационные файлы в директории %LocalApplicationsData%\StartupDelayed
)/confdir <путь>
- указать путь к директории с файлами конфигурацииПо умолчанию программа будет запущена в режиме конфигурации, и будет искать конфигурационные файлы в директории со своим исполняемым файлом.
Инсталлятор (не портативная версия)
Портативная версия
Исходники на GitHub
Это репост с сайта http://tolik-punkoff.com
Оригинал: http://tolik-punkoff.com/2018/12/22/otlo