Я использую Командлеты запланированных задач Powershell для создания запланированной задачи на наших серверах.
Как мне выбрать "Запустить, был ли пользователь включен или нет", используя этот API?
Я создал объекты action
, trigger
, principal
и settings
и передал их в Register-ScheduledTask
, как показано ниже:
$action = New-ScheduledTaskAction -Execute foo.exe -Argument "bar baz"
$trigger = New-ScheduledTaskTrigger -Once -At $startTime -RepetitionInterval (New-TimeSpan -Minutes 1) -RepetitionDuration ([Timespan]::MaxValue)
$principal = New-ScheduledTaskPrincipal -UserId "$($env:USERDOMAIN)\$($env:USERNAME)" -LogonType ServiceAccount
$settings = New-ScheduledTaskSettingsSet -MultipleInstances Parallel
Register-ScheduledTask -TaskName $taskName -TaskPath "\my\path" -Action $action -Trigger $trigger -Settings $settings -Principal $principal
Когда я создаю запланированную задачу, подобную этой, по умолчанию она "Выполняется только при входе пользователя".
Этот вопрос показывает, как это сделать, используя COM-объекты, и этот, используя schtasks.exe, но как это сделать, используя командлеты *-ScheduledTask*
?