0

在我的 C# 应用程序中,我使用 ITask Task Scheduler 接口将任务创建到 Task Scheduler 中。我可以创建任务,但在分配应用程序名称时遇到问题。每次我创建任务“启动程序”(应用程序名称)时,即使我从代码中附加双引号并使用ITask::SetApplicationName()它不工作的方法设置应用程序名称,也不用双引号括起来。

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

在此处输入图像描述

注意:如果我从 MS 任务计划程序创建相同的,它会附加双引号。

4

1 回答 1

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);
}
于 2016-05-09T12:26:02.363 回答