ITask :: SetApplicationName具有空间问题的应用程序名称

时间:2016-05-05 07:47:04

标签: c# taskscheduler

在我的C#应用​​程序中,我使用ITask Task Scheduler接口将Task创建为Task Scheduler。我可以创建任务但我在分配应用程序名称时遇到问题。 我每次创建任务 "启动程序" (应用程序名称)不包含在双引号中,即使我从代码中添加双引号并设置使用ITask::SetApplicationName()方法的应用程序名称无效。

当我尝试从任务计划程序编辑任务时,会出现真正的问题。实际的路径和参数搞砸了(请参考图片)。 " G:\某些名称WithSpace \ Build \ Some.exe" 这是我的实际应用程序名称。

enter image description here

注意:如果我在MS Task Scheduler中创建相同的内容,则会附加双引号。

1 个答案:

答案 0 :(得分:0)

尝试使用ITask :: SetApplicationName()方法的许多不同方法,但没有工作,最后找到了使用Task Scheduler Managed Wrapper

用双引号括起应用程序路径的方法
using (TaskService ts = new TaskService(@"\\RemoteServer"))
{
    TaskDefinition td = ts.NewTask();
    td.RegistrationInfo.Description = "Does something";

    // Create an action that will launch Notepad whenever the trigger fires
    td.Actions.Add(new ExecAction("notepad.exe", "\"c:\\Some Folder\\test.log\"", null));

    // Register the task in the root folder
    ts.RootFolder.RegisterTaskDefinition(@"Test", td);
}