Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell:将焦点设置为子窗口_Powershell_Focus_Childwindow - Fatal编程技术网

Powershell:将焦点设置为子窗口

Powershell:将焦点设置为子窗口,powershell,focus,childwindow,Powershell,Focus,Childwindow,我正在处理自动病毒扫描排除。因为我不能直接写入注册表,所以我正在使用PowerShell生成一个宏。它工作得很好,但我想确保在发送一系列按键之前,我已经获得了所需窗口的焦点 使用下面的代码,我获得了McAfee的VirusScan排除 & 'C:\Program Files (x86)\McAfee\VirusScan Enterprise\mcconsol.exe' Start-Sleep 5 [void] [System.Reflection.Assembly]::LoadW

我正在处理自动病毒扫描排除。因为我不能直接写入注册表,所以我正在使用PowerShell生成一个宏。它工作得很好,但我想确保在发送一系列按键之前,我已经获得了所需窗口的焦点

使用下面的代码,我获得了McAfee的VirusScan排除

& 'C:\Program Files (x86)\McAfee\VirusScan Enterprise\mcconsol.exe'
Start-Sleep 5    
[void] [System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic")
[Microsoft.VisualBasic.Interaction]::AppActivate("VirusScan Console")
Start-Sleep -m 500
[void] [System.Reflection.Assembly]::LoadWithPartialName("'System.Windows.Forms")
[System.Windows.Forms.SendKeys]::SendWait("{DOWN}{DOWN}{DOWN}%{ENTER}")
start-sleep -m 500
#[Microsoft.VisualBasic.Interaction]::AppActivate("On-Access Scan Properties")
[System.Windows.Forms.SendKeys]::SendWait("{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{DOWN}{TAB}{TAB}{TAB}{RIGHT}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{RIGHT}%E")
start-sleep -m 750
但是,有可能焦点不在正确的窗口上

子窗口 “访问时扫描属性”和“设置排除”(作为“访问时扫描属性”的子项)出现

问题: 1) 我可以使用什么代码设置特定子窗口的焦点(按标题)? 2) 我可以使用什么代码来测试窗口实际上是焦点

基本上,我使用和RDP管理器连接到一组不同的机器。我想把这个脚本放在一边,然后忘掉它。为了做到这一点,我必须确保正确的窗口处于焦点位置。在RDP连接之间切换时,它不能正常工作