Автоматически закрывать программу в назначенное время каждый день

17

Есть ли способ автоматически определить, запущена ли программа, и закрыть ее в назначенное время, скажем, в 3 часа ночи каждый день?
Может быть, использовать планировщик задач, чтобы закрыть указанное приложение? если это возможно, будет оценено любое направление.

Vista или Win7

fixer1234
источник

Ответы:

26

Есть много способов сделать это. Простым решением было бы просто использовать Task Scheduler для запуска пакетного скрипта, такого как этот, в 3 часа ночи каждый день:

taskkill /f /im programname.exe

сохранить как что-то вроде closeprograms.bat и заменить имя_программы.exe именем исполняемого файла, который вы хотите убить. Настройте Планировщик заданий так, чтобы запускать этот пакетный файл в любое время.

  • /f означает, что оно принудительно прекращено
  • /im предшествует «имя изображения» = имя процесса
Джон Т
источник
2
Есть ли способ сделать это без /f? Я хочу, чтобы программа могла обрабатывать свои вещи при закрытии, а не убивать их.
Боуи
1
Не нужно помещать это в командный файл. Просто установите для «Program / script» значение: taskkill и установите для «Add arguments» значение: / f / im programname.exe
Alan L
@Bowi Вы можете сделать это без , /fно она не может на самом деле близко, если программа попросит вас сохранить файлы и т.д. Но вы могли бы сделать это красиво, а затем заставить его потом
эндолиты
2

Чтобы запланировать программу из командной строки Windows, используйте эту команду:

AT hours:minutes /every:date command

Так что если вы хотите запланировать что-то на 3 часа ночи каждый день.

AT 03:00 /evry:M,T,W,Th,F,S,Su "command"

Для получения дополнительной проверки помощи AT /?, CMD /?и эта страница .

TASKLISTперечисляет приложения, которые работают (напишите TASKLIST /?для справки), но я не знаю, как объединить эти две команды, чтобы получить желаемый результат или есть другой способ сделать это; проверьте сайт выше и Google для пакетных файлов и VBScript.

Das_Geek
источник
1

Планировщик системы, кажется, соответствует вашим потребностям. С веб-сайта:

System Scheduler - это отличный инструмент для планирования автоматического запуска приложений, пакетных файлов, сценариев и многого другого.

Для тех, кто привык использовать собственный планировщик задач MS Windows или более старые команды AT или WinAT, System Scheduler является идеальной и простой в использовании заменой с большей гибкостью и возможностями. Системный планировщик работает полностью независимо от планировщика задач MS Windows и не зависит от него.

Кроме того, вы можете запланировать всплывающие напоминания, так что вы никогда не забудете эти важные встречи и дела. Напоминания, задачи и другие события могут быть настроены на запуск один или каждую минуту, час, день, неделю, месяц или год, а также их несколько вариантов. Всплывающие напоминания могут быть отложены по мере необходимости.

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

Наконец, Free vesion of System Scheduler также включает в себя функцию Window Watcher. Программа проверит наличие определенного окна и отправит нажатия клавиш или отправит окну сигнал закрытия, чтобы завершить работу приложений. Полезно для запуска действий или обработки сообщений об ошибках, пока вас нет.

Мэтью Хилл
источник
1

В 07:21 / каждый: M, T, W, Th, F, S, Su taskkill / f / im PROGRAM.EXE

Вы можете получить название программы, зайдя в диспетчер задач и нажав на вкладку «Процессы».

user3053446
источник
1

В Windows 10 примечание о команде AT:

The AT command has been deprecated. Please use schtasks.exe instead.

Полный пример (введите это в командной строке Windows):

SCHTASKS /Create /SC DAILY /ST 03:00:00 /TN sometaskname /TR "taskkill /f /im TheProgramYouWantToStop.exe"

Чтобы убить программу один раз в указанное время (а не ежедневно):

SCHTASKS /Create /SC ONCE /ST 03:00:00 /TN sometaskname /TR "taskkill /f /im TheProgramYouWantToStop.exe"

Вы можете проверить задачу с

SCHTASKS /Query /TN sometaskname

Примечание. Задача также появится в меню «Управление компьютером» -> «Планировщик задач» -> «Библиотека планировщика задач» с именем, sometasknameи вы можете отредактировать или удалить его там. Иногда вам нужно нажать F5, чтобы обновить список задач в управлении компьютером, чтобы увидеть задачу.

пользователь
источник