我试图使用c Sharp创建窗口Task。我编写了代码,但是代码无法正常工作,我得到了运行时expcetionn。这是基于事件的任务计划程序。 我正在尝试安排一个任务,该任务将在系统中的WIFI网络更改时调用。
我试图查看许多来自Microsoft以及外部的文章。我不想使用任何类似“ Quartz”之类的第三方库。
using (TaskService ts = new TaskService())
{
//Create a new task definition and assign properties
TaskDefinition td = ts.NewTask();
td.RegistrationInfo.Description = "Git Config Details";
// Create a trigger that will fire the task at this time every other day
EventTrigger Etrigger = new EventTrigger("Mircosoft-Windows-NetworkProfile/Opertaional", "NetworkProfile", 10002);
Etrigger.Enabled = true;
td.Triggers.Add(Etrigger);
// Create an action that will launch Notepad whenever the trigger fires
td.Actions.Add(new ExecAction(@"C:\projects\Own\powershell\first.bat"));
// Register the task in the root folder
ts.RootFolder.RegisterTaskDefinition("Duplicate", td, TaskCreation.CreateOrUpdate, "NT AUTHORITY\\NETWORKSERVICE", null,
TaskLogonType.ServiceAccount);
}
答案 0 :(得分:0)
我的错,一些拼写错误导致了此问题。 Microsoft和我的上述代码中的操作拼写错误。
这是目前处于工作状态的新代码。
using (TaskService ts = new TaskService())
{
//Create a new task definition and assign properties
TaskDefinition td = ts.NewTask();
td.RegistrationInfo.Description = "Duplicate";
// Create a trigger that will fire the task at this time every other day
EventTrigger Etrigger = new EventTrigger("Microsoft-Windows-NetworkProfile/Operational", "Microsoft-Windows-NetworkProfile", 10002);
Etrigger.Enabled = true;
td.Triggers.Add(Etrigger);
// Create an action that will launch Notepad whenever the trigger fires
td.Actions.Add(new ExecAction(@"C:\projects\Own\powershell\first.bat"));
// Register the task in the root folder
ts.RootFolder.RegisterTaskDefinition("Duplicate", td, TaskCreation.CreateOrUpdate, "NT AUTHORITY\\NETWORKSERVICE", null,
TaskLogonType.ServiceAccount);
}
感谢所有对我的帖子发表评论的人。