Запустите пакет /cmd на заставке

Есть ли способ запустить.bat или.cmd при запуске заставки? Я заметил, что некоторые.exe могут работать, если вы переименуете их в.scr, но так ли это?

3 ответа

Решение

1. Экран запуска

Screen Launcher позволяет выбрать любую программу для запуска в качестве заставки. Вы можете запустить Powerpoint, фильм или любой EXE или связанный файл. Чтобы установить, просто разархивируйте, щелкните правой кнопкой мыши и выберите Установить в контекстном меню. Затем вы можете использовать Screen Launcher, как и любую другую заставку. Чтобы открыть такие файлы, как презентации Powerpoint, вы должны запустить программу Powerpoint и ввести путь к вашему ppt в качестве параметра. Примером отображения изображения может служить c:\winnt\system32\mspaint.exe c:\picture.bmp. Скачать сегодня, чтобы использовать любые средства массовой информации в качестве заставки.

1

[ Альтернативная ссылка для скачивания, так как официальный сайт кажется мертвым. ]

2. RunSaver (не путайте с RunScreenSaver того же автора).

Заставка, которая запускает команду.

2

Я уверен, что есть еще много таких заставок, которые позволят вам запускать произвольные программы / скрипты. Но что, если вы хотите продолжить использовать текущую заставку? Если это так, см. Ниже решение (протестировано на Win7, должно нормально работать на Vista +).


3. Использование инструментов сторонних производителей

  1. Событие с идентификатором 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

    и установите флажки " Успешно и неудачно":

  2. Если вы дождетесь запуска заставки, вы увидите журналы событий, похожие на следующие в Event Viewer:

  3. Теперь легко использовать планировщик заданий, чтобы создать задачу, которая будет запущена при возникновении события 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 проверяет на бездействие и запускает вашу программу.

Другие вопросы по тегам