![本地组策略登录启动脚本未执行](https://linux22.com/image/1348025/%E6%9C%AC%E5%9C%B0%E7%BB%84%E7%AD%96%E7%95%A5%E7%99%BB%E5%BD%95%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC%E6%9C%AA%E6%89%A7%E8%A1%8C.png)
这是适用于 Windows 7 的
我在一个文件夹中有一个 .bat 和 .vbs 文件。.bat 运行 .vbs 脚本。在本地策略组编辑器中的 Windows 设置/脚本下,我在启动属性中添加了对 .bat 文件的引用。
好像我的脚本没有运行(我看不到结果)。是否有日志可以让我查看为什么我的脚本没有运行?.vbs 和/或 bat 是否需要放在特殊文件夹或其他文件夹中?.bat 使用相对路径引用 .vbs - 作为启动脚本运行时可以吗?当我只需双击手动运行 .bat 文件时,一切都正常。
答案1
我可以确认我的 .bat 文件可以正常工作,即使它位于 D:\scripts 文件夹中。我建议在批处理文件中放入一个简单的命令(例如“Notepad”),看看它是否有效。
我还建议启动任务管理器来查看哪些进程处于活动状态,例如使用原始脚本,进程中是否有任何 .vbs 条目?
还有一个想法,你正在配置下面的脚本吗用户配置\Windows 设置\脚本(登录\注销)(我的偏好),或者在计算机配置下,这可能有点棘手。
答案2
这是一个常见的错误。
当您有一个 bat 或 powershell 文件时,您需要将脚本移动到单击“显示文件”时获得的文件夹中,通过将脚本移动到那里,您可以确定系统具有启动时运行所需的所有权限。
就我而言是:C:\WINDOWS\System32\GroupPolicy\Machine\Scripts\Startup
答案3
首先,确保通过在计算机上的命令提示符下运行 rsop 来应用该策略。
其次,确保可以从策略读取的共享文件夹访问该脚本。
更不用说某些策略即使在 gpupdate /force 之后也需要重新启动。如果它被放置在用户配置下并且您将其应用于计算机的 OU,请确保将环回处理模式设置为合并。
我怀疑调用 vbs 文件的批处理文件存在问题,我建议执行以下操作:
运行命令提示符并尝试从提升的 cmd 手动调用该文件一次,从普通 cmd 手动调用该文件一次,这实际上取决于您尝试调用 vbs 文件的方法,无论是 cscript 还是 wscript,更不用说其中一些批处理文件最好在用户设置下配置为登录脚本,而不是计算机(我更喜欢这样)。
现在尝试通过以下命令编辑调用脚本的批处理文件:
@echo off
%WINDIR%\SysWOW64\cmd.exe
cscript script.vbs or \\path\script.vbs
我认为最好将脚本存储在 Sysvol 共享中。或者您可以简单地将 vbs 脚本添加到登录脚本中。此外,如果您粘贴批处理文件的内容,将更容易诊断发生了什么。