【发布时间】:2012-09-29 14:12:51
【问题描述】:
我需要使用 ASP.net 和 C# (Windows Server 2003) 以编程方式创建 Windows 任务。 当我使用以下代码时:
Process p = new Process();
p.StartInfo.FileName = "schtasks.exe";
p.StartInfo.Arguments = " /create /tn MyTask /tr notepad.exe /sc DAILY /st 10:00:00 /ru myUsername /rp myPassword ";
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
p.Start();
p.WaitForExit();
创建任务成功,但任务不执行,提示“无法启动”
还在日志文件中说: “MyTask.job”(notepad.exe)2012 年 10 月 9 日晚上 10:00 ** 错误 ** 尝试检索指定任务的帐户信息失败;因此,该任务没有运行。发生错误,或者该任务不存在帐户信息。 具体错误是:0x8004130f:在任务计划程序安全数据库中找不到指示任务的帐户信息。
当我通过控制面板/计划任务并右键单击我的任务并再次设置我的密码时,我的任务将在下次成功运行。 我能怎么做? 另外,当我将代码更改为:
Process p = new Process();
p.StartInfo.FileName = "schtasks.exe";
p.StartInfo.Arguments = " /create /tn MyTask /tr notepad.exe /sc DAILY /st 10:00:00 /s system /u myUsername /p myPassword ";
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
p.Start();
p.WaitForExit();
它会犯这个错误:
错误:在本地连接上传递用户凭据
【问题讨论】:
标签: asp.net web-applications scheduled-tasks windows-server-2003 user-permissions