我有一个脚本,手动运行时运行良好。当我将其配置为作为计划任务运行时,尽管任务计划程序将其标记为成功,但脚本的这一部分始终无法完成。我注释掉了脚本的其他每行,以隔离此部分是第一个失败。
计划任务的设置非常简单。以具有批处理权限的服务帐户运行任务,无论是否登录,都以最高权限运行。触发时间为每天凌晨 4 点。操作是启动一个程序(powershell
),以.\script.ps1
作为参数并在 中启动D:
。
Set-Service -Name *service* -StartupType Disabled
答案1
当作为计划任务运行时,您的帐户访问 Windows 服务信息的权限非常有限,比以交互方式运行时要少得多。
我写了一些关于这个的内容:从计划任务访问 Windows 服务的状态
您可以以管理员或本地系统的身份运行您的任务,或者授予您的服务帐户更多权限来访问相关服务。
进程黑客是一个很好的 GUI 工具,它允许您设置服务权限,而无需使用相当神秘的安全描述符定义语言 (SDDL)。