0

在这段代码中,我正在创建批处理文件并通过 c# 运行该文件。运行批处理文件时,如果有任务名xxx,点击yes会显示“你确定要删除任务吗”,执行批处理文件中的剩余行。

是否可以自动给出“是”?如果可以,请给出您的想法。

    string schCmd = string.Format("SchTasks /Delete /TN xxx \n schtasks /create /tn xxx " +
                                                "/tr {0} /sd  {1} /st {2} /sc DAILY /mo {3} \n PAUSE"
                                                ,           Server.MapPath("SqlScripts/sqlbackup.bat"), startDate, objAutoBackup.StartTime, objAutoBackup.Occurences);                   

    sw.WriteLine(schCmd);
    sw.Close();

    System.Diagnostics.Process proc = new System.Diagnostics.Process();
    proc.StartInfo.WorkingDirectory = Server.MapPath("SqlScripts");

    proc.StartInfo.CreateNoWindow = true;                  

    proc.StartInfo.FileName = "scheduler.bat";
    proc.Start();
4

2 回答 2

2

您可以使用/f开关schtasks来删除带有提示的任务。

如果指定的任务正在运行,则强制删除任务并抑制警告的值。

http://msdn.microsoft.com/en-gb/library/windows/desktop/bb736357%28v=vs.85%29.aspx

于 2013-01-10T10:31:37.553 回答
0

来自 microsoft.com 上的 Schtasks

使用Force标志:

/f :禁止确认消息。任务被删除,没有警告。

例子:

schtasks /删除 /tn * /f

于 2013-01-10T10:37:03.037 回答