关闭RDC连接时如何保持Azure VM解锁以运行UiPath前台流程?
解决Azure VM关闭RDC后锁屏导致UiPath流程失败的方案
1. 调整远程桌面会话组策略设置
- 运行
gpedit.msc打开本地组策略编辑器,依次导航到计算机配置>管理模板>Windows组件>远程桌面服务>远程桌面会话主机>会话时间限制:- 启用「设置断开连接的会话的时间限制」,设置为从不
- 启用「设置活动但空闲的远程桌面服务会话的时间限制」,设置为从不
- 再到计算机配置>管理模板>Windows组件>远程桌面服务>远程桌面会话主机>安全,禁用「要求使用网络级别身份验证对远程连接进行身份验证」(部分场景下该选项会触发自动锁屏)
2. 适配UiPath执行模式
- 非交互类流程直接开启后台执行:在UiPath项目的「Project Settings」里勾选
Run in background,无需桌面解锁即可运行 - 必须前台执行的流程,在Orchestrator中绑定VM机器时选择Unattended Robot类型,配合无人值守执行配置,避免依赖RDC会话状态
3. 优化Windows 11锁屏与电源设置
- 打开「设置>系统>电源」,把屏幕、睡眠的超时时间全设为从不
- 到「设置>账户>登录选项>隐私」,关闭「允许Windows在你离开时自动锁定设备」
- 运行
powercfg.cpl打开电源选项,进入「更改计划设置>更改高级电源设置」:- 展开「睡眠>允许混合睡眠」设为关闭
- 展开「远程桌面设置>远程桌面唤醒计算机」设为启用
4. 用脚本强制保持会话活跃
- 新建
KeepSessionAlive.bat批处理文件,内容如下:
@echo off :loop powershell -Command "(Add-Type '[DllImport(\"user32.dll\")]public static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint cButtons, uint dwExtraInfo);' -Name a -Pas)::mouse_event(0x0001,1,0,0,0)" timeout /t 60 /nobreak >nul goto loop
- 把这个文件放到VM的启动文件夹(
C:\Users\<你的用户名>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup),开机后自动每隔60秒模拟一次鼠标移动,防止系统锁屏
5. Azure VM层面的配置修改
- 登录Azure门户找到目标VM,进入「扩展」选项,添加「Custom Script Extension」,运行以下PowerShell脚本:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon' -Name 'DisableLockWorkstation' -Value 1 Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization' -Name 'NoLockScreen' -Value 1
- 重启VM让设置生效
内容的提问来源于stack exchange,提问作者Umer Shahid
相关产品推荐
相关产品推荐

