powershell - 识别当前活动窗口,向另一个窗口发送击键并返回到当前活动窗口
问题描述
问题:我的虚拟机在没有输入的情况下在 15 分钟后注销,我希望保持它的活力,同时尽量减少对我在机器上工作的影响。
使用 Powershell 的潜在解决方案: 1. 识别当前活动窗口 2. 将焦点更改为 VM 应用程序窗口(窗口名称是静态的) 3. 每 15 分钟/900 秒发送一次 F16 击键 4. 将焦点返回到先前活动的窗口我正在努力。
我已经编写了实现第 2 点和第 3 点的工作代码,但我无法找到第 1 点和第 4 点的解决方案。我确信这是一个简单的问题,但我渴望一个简单而优雅的问题解决方案。
我当前的代码:
while($true)
{
$wshell = New-Object -ComObject wscript.shell;
$wshell.AppActivate('My VM Window I need to keep alive')
Sleep 1
Write-Output("Sending Keystroke")
Sleep 1
$wshell.SendKeys('F16')
Sleep 1
Write-Output("Sleeping")
Sleep 900
}
如果还有更好的方法来完成第 2 点和第 3 点,请告诉我我在这里学习。
或者: 有没有办法在不离开当前活动窗口的情况下将击键发送到非活动窗口?那将是更少的干扰!
感谢你的协助!
解决方案
推荐阅读
- asp.net-mvc - NGINX 反向代理中的 .Net 核心 POST API 引发错误 404
- android - 为什么处理点击的功能需要从适配器初始化传递?
- python - Python 请求,为每个请求绑定到不同的源 ip,但未按预期工作
- reactjs - 拖放时ReactJs Dropzone不起作用
- java - 在 Java 上,使用反射,如何判断字段的值是在声明中设置还是在构造函数主体中设置
- python - 更改 scipy.stats.probplot 中样本子集的样式
- python-3.x - 从另一个 DataFrame 为每列创建唯一值的数据框
- reporting-services - SSRS - 根据where子句在表达式中显示字段?
- excel - 过滤后的 Hlookup vba
- javascript - 无法删除传单地图中的折线