Как ввести текстовую строку пароля в Host.UI.PromptForCredential Powershell Windows 10 - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь создать пользовательскую задачу в планировщике задач Windows, используя powershell.

Я создал скрипт, который откроет UIBox с двумя полями ввода.

1. user field
2. password field

ЯЯ могу автоматически вставить текст в поле 1. user field при создании окна, но у меня возникли проблемы с поиском способа вставить мой пароль в 2. password field..

Есть идеи, как автоматически вставить свой пароль?

Ниже приведен полный сценарий.

$jobname = 'start_ahk_multiple_hotkeys'
$script = '-ExecutionPolicy Bypass -file C:\script.ps1'
$action = New-ScheduledTaskAction -Execute '"C:\Program Files\AHK\AutoHotkey.exe"' -Argument '%OneDrive%\Documents\01_Scripts\Hotkeys_1.ahk'
$trigger = New-ScheduledTaskTrigger -AtLogOn
$Description='This task will keep ???'
$msg = 'Enter the username and password that will run the task';
$credential = $Host.UI.PromptForCredential('Task username and password',$msg,'COMPUTERNAME\USERNAME',$env:userdomain)
$username = $credential.UserName
$password = $credential.GetNetworkCredential().Password
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable -DontStopOnIdleEnd
Try{
$ErrorActionPreference='stop'
Register-ScheduledTask -TaskName $jobname -Action $action `
-Trigger $trigger -RunLevel Highest -User $username -Password $password -Settings  $settings -Description $Description|Out-Null
}
Catch{
Write-Warning $_
}

$find=Get-ScheduledTask -TaskName '*Name of task*'
If($find){
Write-Host 'Task has been created sucessfully' -BackgroundColor DarkBlue

Я застрял вокруг этой части специально:

$credential = $Host.UI.PromptForCredential('Task username and password',$msg,'COMPUTERNAME\USERNAME',$env:userdomain)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...