You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何以管理员身份为域内所有用户创建动态触发的MSI运行计划任务

解决方案:创建适配所有域用户的计划任务

要实现以管理员身份创建计划任务,让程序自动以当前登录的域用户身份运行,需要调整触发器和任务主体配置,去掉静态用户指定,具体修改如下:

修改后的PowerShell脚本

$taskName = "My Task2"
$taskDescription = "This task runs as the currently logged-on domain user with admin rights, triggered on logon"

# 定义触发器:所有用户登录时触发
$trigger = New-ScheduledTaskTrigger -AtLogOn

# 定义任务动作:替换为你的应用实际路径
$taskAction = New-ScheduledTaskAction -Execute "C:\Path\To\Your\InstalledApp.exe"

# 定义任务主体:以当前登录用户身份运行,且使用最高管理员权限
$taskPrincipal = New-ScheduledTaskPrincipal -UserId "CURRENT_USER" -RunLevel Highest

# 注册计划任务,-Force参数用于覆盖已存在的同名任务
Register-ScheduledTask -TaskName $taskName `
    -Trigger $trigger `
    -Action $taskAction `
    -Principal $taskPrincipal `
    -Description $taskDescription `
    -Force

关键修改说明

  • 触发器调整:移除原脚本中的-User Sanket.Wagh参数,仅保留-AtLogOn,确保所有域用户登录该计算机时都会触发任务。
  • 任务主体配置:通过New-ScheduledTaskPrincipal设置运行身份,-UserId "CURRENT_USER"是系统内置标识符,会自动映射到当前登录的域用户;-RunLevel Highest确保任务以管理员权限运行,满足创建任务时的权限要求。
  • 任务注册优化:添加-Force参数可直接覆盖已存在的同名任务,避免重复创建时的报错。

核心cmdlet功能说明

  • New-ScheduledTaskTrigger:用于创建任务触发规则,无用户参数的-AtLogOn会对所有登录用户生效。
  • New-ScheduledTaskPrincipal:配置任务的运行身份与权限等级,CURRENT_USER实现动态适配当前登录用户的需求。
  • Register-ScheduledTask:整合触发器、动作、主体等配置,完成计划任务的系统注册。

内容的提问来源于stack exchange,提问作者Sanket Wagh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 11:00:38