• XSS.stack #1 – первый литературный журнал от юзеров форума

[C#] Добавление программы в планировщик задач

r3xq1

(L3) cache
Пользователь
Регистрация
14.01.2020
Сообщения
233
Реакции
146
Создадим метод Scheduler
C#:
/* Author r3xq1 */

/// <summary>
/// Метод для добавления программы в автозагрузку через Планировщик задач
/// </summary>
/// <param name="status">Выбор функции Добавить/Удалить задачу</param>
/// <param name="timeset">Выбор таймера по минутам</param>
/// <param name="count">Время запуска программы</param>
/// <param name="priority">Приоритет процесса</param>
/// <param name="taskname">Имя Задачи</param>
/// <param name="filepath">Путь к файлу который запускается в задаче</param>
/// <returns></returns>
public static bool Scheduler(bool status, string timeset, int count, string priority, string taskname, string filepath)
{
    if (string.IsNullOrWhiteSpace(taskname) || string.IsNullOrWhiteSpace(filepath)) return false;

    ProcessWindowStyle PwsHide = ProcessWindowStyle.Hidden;
    ProcessStartInfo startInfo = new ProcessStartInfo
    {
       FileName = "schtasks.exe",
       CreateNoWindow = false,
       WindowStyle = PwsHide
     };
    switch (status) // можно сделать через if кому как удобнее.
    {
         // Добавляет запись в планировщик
        case true: startInfo.Arguments = string.Concat("/create /sc ", timeset, " /mo ", count, " /rl ", priority, " /tn ", taskname, " /tr ", filepath, " /f"); break;
        // Удаляет запись из планировщика
        case false: startInfo.Arguments = string.Concat("/delete /tn ", taskname, " /f"); break;
    }
    try
    {
      using (Process info = Process.Start(startInfo)) { info.Refresh(); info.WaitForExit(); }
    }
   catch (Exception) { } startInfo = null;  return true;
}
Вызывается так:
C#:
Scheduler(false, "minute", 1, "highest", "NotepadTEST", string.Concat("\"", App, "\"")); // Где App это путь к вашему файлу.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх