除非我登录到服务器,否则计划任务无法启动

除非我登录到服务器,否则计划任务无法启动

任务需要打开 CMD 窗口并传递 net use 命令,然后执行 DIR 命令,将输出发送到服务器上的文件中。以我 (Sysadmin) 或系统帐户之一的身份登录,并且只有当我物理登录到服务器时,任务才会运行。在两个用户 (我和服务帐户) 的安全属性中设置了以批处理文件形式运行,所有目录都获得了安全性,等等。它几乎就像一个计划任务,因为它没有物理连接到显示器,无法创建 CMD 窗口并传递 WinID,因此可以发送命令。我猜。有谁知道一份文档,解释了如果通过计划任务完成并且没有与任务关联的附加用户,服务器如何处理窗口的启动?如果我登录到框并运行计划任务,它们会运行良好,但不会产生错误或事件日志条目,然后只显示它已成功运行并设置下一次运行时间。尝试过打开和关闭如果登录则运行复选框,但没有任何区别。其他任务运行良好,只是它们在本地驱动器上运行,没有发生显示写入或更新,所以我猜测系统要么在没有显示器连接到登录用户的情况下无法实例化窗口,要么在尝试创建虚拟屏幕时无法建立点。您可能认为它只是创建一个内存映射,然后将其映射到要显示的设备,但事实似乎并非如此,但我找不到关于系统如何处理计划任务以及如何调用可以写入的虚假或虚拟屏幕的文档,因此看起来用户已连接。谢谢这让我抓狂,我已经尝试了我能想到的所有方法以及我们的网络男孩的想法,但似乎没有任何效果。

答案1

任务需要打开 CMD 窗口并传递 net use 命令,然后执行 DIR 命令,将输出复制到服务器上的文件中

如果您未登录到框中,则无法映射驱动器。尝试修改脚本,使其在 UNC 路径上列出目录,这样应该可以正常工作。

答案2

您可以在批处理文件中映射驱动器。例如,在这里,您使用用户名 DOMAIN\somebody 和密码“1234”将服务器 SERVER01 上的共享映射到驱动器 Z:

net use Z: \\SERVER01\share 1234 /USER:DOMAIN\somebody /PERSISTENT:NO

dir Z:\ > c:\dir.txt

net use z: /delete

相关内容