Как запустить задачу во время загрузки и дождаться ее завершения? Я знаю, что chkdsk и некоторые другие программы делают это, но как? Обновление: я нашел способ. Родной API, если кому-то интересно.
Windows имеет ключ «HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ BootExecute», программы в нем выполняются до запуска любой подсистемы, т.е. до win32 , LSA и т. Д. Единственный доступный API в это время - NativeAPI , Большинство его функций могут поставить под угрозу безопасность и стабильность системы (этот API может закрывать дескрипторы, скрывать ключи реестра и многое другое). Конечно, многие из его функций недокументированы, но ребята из http://undocumented.ntinternals.net/ документировали многие из них.
Вот еще один метод (не уверен, что этот «нативный API» такой же, но вы можете использовать Windows Task Schedular. Существует возможность включения при включении компьютера или входа пользователя в систему.
Как установить / обертку (просто для дополнительной информации): Установщик планировщика заданий Windows