Powershell получить имя окна и sendkeys - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть скрипт, который зацикливается, пока не находит окно интернет-обозревателя, а затем отправляет ему ключи (см. Ниже).Моя проблема заключается в том, что я не могу отправить ключи в окно после функции AppActivate, так как она не фокусируется на поле «Имя файла», в котором следует вводить ключи.(см. мой код ниже)

$wshell = New-Object -ComObject wscript.shell;
$ScriptDone = 'False'
$val=0

While ($ScriptDone = 'False') 
{ 
    if($wshell.AppActivate('Choose File to Upload'))
    {
        Start-Sleep -Seconds 1

        [System.Windows.Forms.SendKeys]::SendWait('a')
        Break
    } 

    Start-Sleep -Seconds 1

    $val++
    Write-Host $val

    if ($val -eq 60)
    {
        $ScriptDone='True'
    }
}

Также скриншот ниже показывает, как выглядит всплывающее окно.

Всплывающее окно

Есть лиспособ не активировать окно, а проверить, существует ли оно вместо этого?Я просто хотел бы заменить функцию AppActivate, если это возможно.

Или есть еще один способ активировать поле «Имя файла» в «Окно выбора файла для загрузки»?

...