以编程方式连接虚拟机的 USB 设备

以编程方式连接虚拟机的 USB 设备

我是一名测试开发人员,在一家开发自己的硬件的公司工作。现在我在通过 USB 测试硬件连接时遇到了一个问题。以下是测试和问题的简要概述:

测试描述:

  • 测试自动化
  • 测试在虚拟机中运行(操作系统 Windows 10,虚拟机由 Oracle VirtualBox 虚拟化工具运行)
  • 根据设计,测试直接从虚拟机运行
  • 在测试中,被测试的硬件重新启动

问题描述:

  • 重新启动后,虚拟机将 USB 从设备上断开
  • 下一次测试执行时,断开的 USB 设备导致无法与硬件连接

解决这个问题我需要在测试运行期间自动(以编程方式)连接虚拟机的 USB 设备。我发现 Oracle VirtualBox 虚拟化工具有一个 COM 库部分。由于该库的描述清晰明了(在官方网站上提供),使用该库看起来很简单。

显然,不可能直接从虚拟机本身控制虚拟机,因此我需要弄清楚如何让虚拟机与主机进行通信。执行重置后,主机将连接 USB 设备。

我的问题是:

A) 有没有办法重新连接虚拟机上的设备?
B) 使用主机 COM(组件对象模型)的最简单方法是什么?

相关内容