我为我们的网站编写了一些自动化代码,其中使用sikuli
进行图像自动化。但是有时我发现我的计算机屏幕插入了两者之间,这就是为什么许多测试用例失败的原因。因此,我想编写一些Python代码以保持屏幕的解锁。
这是我为锁定屏幕而写的代码补丁,现在我正在寻找如何解锁屏幕:
import os
winpath = os.environ["windir"]
os.system(winpath + r'system32rundll32 user32.dll, LockWorkStation')
注意:我已经调整了所有导致屏幕锁定的监视器设置。
才能正常工作。这意味着应登录用户。以下是如何实现这一目标的步骤:
使用Autologon
- 下载并使用sysinternals autologon
您应该重定向控制台,以便随时拥有UI
- 创建新任务 in 任务调度程序
- 常规选项卡检查" 运行最高特权" "
- 触发器 TAB添加 new 触发
- 新触发器对话框从用户会话中的" "从"开始任务" "开始任务" 下拉或使用用户,您通常会登录
- 创建 switch-ui.bat 文件,文件夹中的以下内容 switch-ui on desktop
echo ################################################### >> %USERPROFILE%Desktoprdc_switch_log.log
date /t >> %USERPROFILE%Desktoprdc_switch_log.log time /t >> %USERPROFILE%Desktoprdc_switch_log.log
timeout 3
query session >> %USERPROFILE%Desktoprdc_switch_log.log
query session > %localappdata%log.txt
findstr "rdp" %localappdata%log.txt| findstr "Active"
if %errorlevel%==0 (
echo You are in RDP session. Do nothing! >>%localappdata%log.txt
)
else (
tscon 1 /dest:console
tscon 2 /dest:console
tscon 3 /dest:console
tscon 4 /dest:console
)
- actions Tab Action 的下一个
- 新操作中的下一个对话框从 Action 下拉 中选择"启动程序"
- 在设置程序/脚本中,将完整的路径添加到您的文件" C: users %yourusers% desktop switch-ui switch-ui switch-ui.bat"
- 在启动(可选)中,使用脚本" C: USERS %yoursers% desktop switch-ui"
- 按 OK 和完成任务
重要:为了测试其有效。
- 获取视频录音机
- 从远程桌面连接(RDC)上的机器上登录
- 开始视频
- 关闭RDC
- 等待2分钟
- 再次连接
- 停止视频
- 观看视频
您应该只有在关闭RDC时才会记录一个黑色视频,并且与RDC连接几秒钟时,您应该仅记录下来的视频,这取决于您的机器的速度。