Cerrar automáticamente el programa a una hora programada cada día

16

¿Hay alguna manera de determinar automáticamente si un programa se está ejecutando y cerrarlo a la hora programada, digamos las 3 am todos los días?
¿Quizás usar el programador de tareas para cerrar dicha aplicación? si esto es posible, cualquier dirección sería apreciada.

Vista o Win7

fijador1234
fuente

Respuestas:

25

Muchas formas de hacerlo. Una solución simple sería simplemente usar el Programador de tareas para ejecutar un script por lotes como este a las 3 am todos los días:

taskkill /f /im programname.exe

guárdelo como closeprograms.bat y sustituya programname.exe con el nombre del ejecutable que desea eliminar. Configure el Programador de tareas para ejecutar este archivo por lotes siempre que lo desee.

  • /f significa que se termina con fuerza
  • /im precede al "nombre de la imagen" = nombre del proceso
John T
fuente
2
¿Hay alguna manera de hacerlo sin /f? Quiero que el programa pueda manejar sus cosas al cerrar en lugar de matarlo.
Bowi
1
No es necesario poner esto en un archivo por lotes. Simplemente configure "Programa / script" en: taskkill, y establezca "Agregar argumentos" en: / f / im programname.exe
Alan L
@Bowi Puede hacerlo sin, /fpero puede que en realidad no se cierre, si el programa le pide que guarde archivos, etc. Pero podría hacerlo bien primero y luego forzarlo después
endolith
2

Para programar un programa desde la línea de comandos de Windows, use este comando:

AT hours:minutes /every:date command

Entonces, si desea programar algo para las 3:00 a.m.todos los días.

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

Para obtener más ayuda cheque AT /?, CMD /?y esta página .

TASKLISTenumera las aplicaciones que se están ejecutando (escriba TASKLIST /?para obtener ayuda), pero no conozco una forma de combinar estos dos comandos para obtener el resultado que desea o si hay otra forma de hacerlo; revise el sitio anterior y google para archivos por lotes y VBScript.

Das_Geek
fuente
1

El Programador del sistema parece satisfacer sus necesidades. Desde el sitio web:

System Scheduler es una excelente herramienta para programar la ejecución desatendida de aplicaciones, archivos por lotes, scripts y mucho más.

Para cualquiera que esté acostumbrado a usar el Programador de tareas propio de MS Windows, o los comandos AT o WinAT más antiguos, el Programador del sistema es un reemplazo ideal y fácil de usar, con más flexibilidad y características. El Programador del sistema se ejecuta de forma totalmente independiente del Programador de tareas de MS Windows y no depende de él.

Además, puede programar recordatorios emergentes para que nunca olvide esas citas importantes y cosas que hacer. Se pueden configurar recordatorios, tareas y otros eventos para que se ejecuten una vez o cada minuto, hora, día, semana, mes o año y varias variaciones de estos. Los recordatorios emergentes se pueden posponer según sea necesario.

System Scheduler no solo le permite iniciar programas a horas programadas, sino también enviar pulsaciones de teclas y clics del mouse a esos programas. Esto le permite no solo programar programas para que se ejecuten durante la noche o los fines de semana, sino también hacer que esos programas hagan cosas útiles sin supervisión. Una característica realmente poderosa.

Finalmente, la versión gratuita de System Scheduler también incluye una función de Observador de ventanas. El programa verificará la existencia de una ventana en particular y enviará pulsaciones de teclas o enviará a la ventana una señal de cierre para finalizar las aplicaciones en ejecución. Útil para activar acciones o manejar mensajes de error mientras estás fuera.

Matthew Hill
fuente
1

A LAS 07:21 AM / cada: M, T, W, Th, F, S, Su taskkill / f / im PROGRAM.EXE

Puede obtener el nombre del programa yendo al administrador de tareas y haciendo clic en la pestaña "Procesos".

usuario3053446
fuente
1

En Windows 10, una nota sobre el comando AT:

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

Un ejemplo completo (escriba esto en el símbolo del sistema de Windows):

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

Para matar un programa una vez a una hora específica (en lugar de a diario):

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

Puede verificar la tarea con

SCHTASKS /Query /TN sometaskname

Nota: La tarea también aparecerá en Administración de equipos-> Programador de tareas-> Biblioteca del Programador de tareas con el nombre sometasknamey puede editarla o eliminarla allí. A veces necesitará presionar F5 para actualizar la lista de tareas en la administración de la computadora para poder ver la tarea.

Usuario
fuente