我需要使用 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();
它成功创建任务,但任务不执行并说“无法启动”</p>
同样在日志文件中它说:“MyTask.job”(notepad.exe)10/9/2012 10:00 PM ** 错误 ** 为指定任务检索帐户信息的尝试失败;因此,该任务没有运行。发生错误,或者该任务不存在帐户信息。具体错误是: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();
它使这个错误:
错误:在本地连接上传递用户凭据