【问题标题】:Check if Windows virtual machine is in use检查 Windows 虚拟机是否正在使用中
【发布时间】:2022-08-02 20:45:49
【问题描述】:

在我的组织中,我们使用的是运行 UiPath RPA 进程的虚拟机。在 UiPath Orchestrator 中,如果进程通过 Orchestrator 在虚拟机上运行,​​则它是可见的。

也可以通过远程桌面连接手动登录虚拟机。现在的问题是,有时当 RPA 开发人员手动登录到虚拟机时,另一个用户正在使用同一台机器从 Orchestrator 启动一个进程。这将导致手动登录机器的人被淘汰。

我试图想出一种方法来检测用户是否已经登录到机器,并在任何进程启动之前以某种方式检查这一点。

我已经尝试并创建了两个通过 Windows 任务计划程序计划的批处理文件。当用户解锁远程机器时,批处理在网络驱动器中创建一个文件,并在远程机器锁定时删除该文件。

我现在的问题是,在通过 Orchestrator 启动任何进程之前,我需要以某种方式检查此文件是否存在。所以它不能通过 UiPath 完成,因为这会立即连接到机器并抛出其他用户。

有人遇到过类似的问题并解决了吗?

  • 您尝试管理的行为是 UiPath 在初始化作业并连接到机器人机器时控制。您可能需要联系 UiPath 支持/SME 来询问这个问题。我认为您使用与机器人相同的帐户登录用户,这会导致断开连接。您可能想尝试为机器人和用户使用单独的 Windows 帐户,它应该会更好地工作。
  • 是的,但他只有有限的许可证。所以他不希望VM上的另一个用户,我想。实际上,我们遇到了同样的问题。为了解决这个问题,创建了一个 node.js 工具,它每秒在服务器上创建一个屏幕截图。然后是将该图像传播到 Web 服务器的添加工具。在那里我可以看到服务器是否正在通过 RDP 使用人类或进程正在运行(任务栏中的绿色图标)。也许这也可能是你的方式。看看机器上发生了什么也可能很棒。 :)
  • 我投票结束这个问题,因为 SO 是一个编程问答平台,这个问题与编程无关。 What topics can I ask about here? 请删除此内容。

标签: windows remote-access remote-server remote-desktop uipath


【解决方案1】:

尝试一个简单的方法 检查谁已经登录

Query user /Server:MachineName

这将提供连接到该主机的用户列表

现在您/机器人可以向相应用户发送一条消息 (Msg) 以保存他的工作并注销

默认情况下,两者( query 和 msg )在 Windows 操作系统上都可用

对您的机器人进行编码,以便在您开始自动化之前执行此操作

链接

docs.microsoft.com/en-us/windows-server/administration/windows-commands/query-user

docs.microsoft.com/en-us/windows-server/administration/windows-commands/msg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-12
    • 2015-03-11
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-24
    相关资源
    最近更新 更多