GPO:在系统启动期间以本地管理员(而非系统)身份运行批处理脚本

GPO:在系统启动期间以本地管理员(而非系统)身份运行批处理脚本

这个问题可能之前已经回答过了,但我无法找到针对我的具体问题的明确答案。

我正在尝试运行一个批处理脚本,该脚本将触发使用 .Net Framework 用 Topshelf 编写的自定义 Windows 服务的安装。

install我可以通过从批处理文件中调用附加了启动标志的可执行文件来安装该服务。这将安装该服务并将其作为 Windows 服务中的本地系统运行。

我可以直接以管理员身份运行此批处理脚本,但当我尝试在组策略对象 (GPO) 中的启动脚本上下文中使用它时,它将不起作用。这是因为启动脚本在帐户上下文中运行批处理文件。SYSTEM并且此帐户环境无法正确看到 .Net 框架,导致安装因缺少 .DLL 文件而失败。

这是我正在运行的批处理脚本:

@echo off

:: Check for previously installed probing agent.
if exist C:\vnc-probe-agent (
    goto EXIT
) else (
    goto INSTALL_AGENT
)

:INSTALL_AGENT
mkdir C:\vnc-probe-agent
xcopy /s /v /y \\SERVER\Apps\vnc-probing-agent C:\vnc-probe-agent

cd C:\vnc-probe-agent

timeout 3

C:\vnc-probe-agent\vnc-probe-agent.exe install
C:\vnc-probe-agent\vnc-probe-agent.exe start

timeout 30
:EXIT

有人有什么巧妙的技巧来运行这个脚本BUILTIN\AdministratorSYSTEM

我也尝试过使用任务计划程序,但同样不起作用。它完全拒绝创建具有所需设置的任务计划程序条目。

相关内容