Проверьте, завершила ли оболочка Windows загрузку программ запуска - PullRequest
0 голосов
/ 16 октября 2010

Как я могу программно проверить, загрузила ли оболочка Windows (проводник) все программы запуска и завершился ли процесс входа пользователя?

1 Ответ

1 голос
/ 16 октября 2010

Есть несколько документированное событие, которое вы можете ждать, но оно сигнализируется, когда проводник загрузил .В XP это событие называется «msgina: ShellReadyEvent» и «ShellDesktopSwitchEvent» в Vista.Я связался с источниками некоторых альтернативных оболочек в сообщении , связанном с этим событием.

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

В Vista + есть еще одна последняя альтернатива, которую может просто работать: программы, настроенные на запуск при запуске, являются частьюобъект задания, поэтому они не могут работать с высоким приоритетом.Если ваша программа запускается при запуске, вы можете проверить это, используя IsProcessInJob или SetPriorityClass + GetPriorityClass в цикле.(SetPriorityClass будет лгать о его возвращаемом значении IIRC)

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