Есть ли способ запустить .bat или .cmd при запуске заставки? Я заметил, что некоторые .exe могут работать, если вы переименуете их в .scr, но так ли это?
Есть ли способ запустить .bat или .cmd при запуске заставки? Я заметил, что некоторые .exe могут работать, если вы переименуете их в .scr, но так ли это?
Ответы:
Screen Launcher позволяет выбрать любую программу для запуска в качестве заставки. Вы можете запустить Powerpoint, фильм или любой EXE или связанный файл. Чтобы установить, просто разархивируйте, щелкните правой кнопкой мыши и выберите Установить в контекстном меню. Затем вы можете использовать Screen Launcher, как и любую другую заставку. Чтобы открыть такие файлы, как презентации Powerpoint, вы должны запустить программу Powerpoint и ввести путь к вашему ppt в качестве параметра. Примером отображения изображения может служить c: \ winnt \ system32 \ mspaint.exe c: \ picture.bmp. Скачать сегодня, чтобы использовать любые средства массовой информации в качестве заставки.
[ Альтернативная ссылка для скачивания, так как официальный сайт кажется мертвым. ]
Заставка, которая запускает команду.
Я уверен, что есть еще много таких заставок, которые позволят вам запускать произвольные программы / скрипты. Но что, если вы хотите продолжить использовать текущую заставку? Если это так, см. Ниже решение (протестировано на Win7, должно нормально работать на Vista +).
Событие с идентификатором 4802 соответствует экранной заставке, которая была вызвана , нопо умолчаниюона не регистрируется, поэтому сначала необходимо включить ведение журнала для этого события. Итак, откройте редактор локальной групповой политики (Start / Run / gpedit.msc
), перейдите к:
Computer Configuration / Windows Settings / Security Settings / Advanced Audit Policy Configuration / System Audit Policies - Local Group Policy Object / Logon/Logoff / Audit Other Logon/Logoff Events
и установите флажки « Успех и неудача» :
Если вы дождетесь запуска заставки, вы увидите журналы событий, похожие на следующие в Event Viewer :
Теперь легко использовать планировщик заданий, чтобы создать задачу, которая будет запущена при возникновении события 4802. Просто убедитесь, что вкладка « Триггеры » диалогового окна « Свойства» задачи выглядит следующим образом:
Чтобы завершить приятный ответ от @Karan , я хотел бы сослаться, для тех, кто заинтересован в выполнении программы после закрытия скринсейвера , этот процесс такой же, как и в его решении «3. Не использовать сторонние инструменты» , но Event ID должен быть 4803 .
(Например, в моем случае я хочу отключить Aero ( «net stop uxsms» ) при запуске заставки и включить его ( «net start uxsms» ) при остановке экрана)
Если время не является критически важным, то вы можете просто использовать встроенный триггер планировщика заданий «Начать задание: на холостом ходу».
Task Scheduler -> Create Task -> "Trigger" tab -> New -> "Begin the task:" -> "On Idle"
Затем перейдите на вкладку «Действия» и установите действие, которое вы хотите запустить.
Это должно выполнить действие после запуска заставки (или , если система переходит в режиме ожидания без экрана), но может быть 0-15 минут задержки. Вот соответствующие особенности из документации планировщика задач:
Служба планировщика заданий будет проверять, находится ли компьютер в состоянии ожидания каждые 15 минут. Компьютер считается находящимся в состоянии ожидания, когда работает заставка. Если экранная заставка не работает, то компьютер считается находящимся в режиме ожидания, если загрузка ЦП 0% и ввод или вывод диска 0% в течение 90% из последних пятнадцати минут и если нет ввода с клавиатуры или мыши в течение этого периода времени.
Итак, ваша заставка запускается, а затем через 0-15 минут Windows проверяет на бездействие и запускает вашу программу.