如何在C#中运行批处理文件时避免警告

时间:2013-01-10 10:29:51

标签: c# process batch-file scheduler

在此代码中,我正在创建批处理文件并通过c#运行此文件。 在运行批处理文件时,如果任务名称xxx在那里,它将显示“你确定要删除任务”,单击是,它将执行批处理文件中的其余行。

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

    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();

2 个答案:

答案 0 :(得分:2)

您可以使用/f的{​​{1}}开关通过提示删除任务。

  

强制删除任务并在指定任务正在运行时禁止警告的值。

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

答案 1 :(得分:0)

Schtasks On microsoft.com

使用强制标志:

/ f:禁止确认消息。删除任务时不会发出警告。

示例:

schtasks / delete / tn * / f