来自计划任务和 Windows 2003 服务器的 CakePHP Shell "could not start"



我正在尝试通过Windows 2003服务器的计划任务运行CakePHP Shell脚本,但我发现该任务无法启动

当我从命令提示符手动运行它时,它运行良好:

C:InetpubwwwrootCakePHPlibCakeConsolecake mail read
"

计划任务运行"域完全相同,"开始时间"设置为:

C:Inetpubwwwrootticketsapp

运行方式字段设置为具有所有权限的计算机管理员(不是 ISS 用户)

计划任务日志在尝试执行时显示以下消息:

"票务邮件系统.job" (蛋糕) 13/12/2012 07:15:00 ** 错误 **

无法启动任务。

具体错误为:

0x80070005:访问被拒绝。

似乎这是一个权限问题。

我试图为两个用户(IIS 6 用户和 Internet Guest 帐户用户)移交lib/Cake/Consol/cake.bat文件的所有权限,但仍然不起作用。

知道这可能是原因吗?

它在Windows 7上运行良好,但在Window 2003服务器上则不然。

最后,我尝试在调用 Shell 后添加 .bat 并且它可以工作。

我不得不把它放在"运行"字段中:

C:InetpubwwwrootCakePHPlibCakeConsolecake.bat mail read

似乎Windows 2003需要最后的.bat...

我在以下位置找到了它:http://www.geekyboy.com/archives/376

谢谢大家,这解决了我的问题。

发现我的".bat"文件反而有扩展名".CMD",到目前为止似乎工作正常。

通过重命名文件扩展名并更改任务计划程序中的目录来修复它。(因为它仍然有".CMD"扩展。

最新更新