我们当前正在使用TaskService
安排任务。我们使用默认文件夹:
TaskScheduler scheduler = new TaskScheduler();
scheduler.Connect();
ITaskFolder rootFolder = scheduler.GetFolder("");
原来是:
C:\Windows\System32\Tasks
这对管理员用户非常有用,但是现在我正尝试为非管理员用户安排任务。现在,上面的代码引发了UnauthorizedAccessException
。
我尝试指定用户特定的文件路径:
"\\Users\\some_user" // FileNotFoundException: The system cannot find the file specified
"C:\\Users\\some_user" // FileNotFoundException: The filename, directory name, or volume label syntax is incorrect
有什么想法吗?
答案 0 :(得分:0)
我不确定scheduler.GetFolder("")
是如何抛出UnauthorizedAccessException
的,现在看来工作正常。
我最终要做的事情是这样的:
TaskScheduler scheduler = new TaskScheduler();
scheduler.Connect();
ITaskFolder rootFolder = scheduler.GetFolder(string.Empty);
ITaskFolder userSpecificFolder = rootFolder.CreateFolder(scheduler.ConnectedUser); // Will throw if folder already exists
// Now can add tasks to userSpecificFolder