我如何检测USB插入没有轮询使用Ruby和WMI



我阅读了以下文章:使用Ruby &WMI检测USB驱动器

然而,这种方法需要我在循环中保持轮询。是否有可能注册并在USB插入/弹出时通知我的脚本?

我正在寻找一个Windows XP的解决方案。

我不能在Ruby方面给您提供太多帮助,但是WMI也支持监视事件。存在一个名为Win32_DeviceChangeEvent的外部事件。

下面是一个简单的PowerShell代码来使用它:
$query = "SELECT * FROM   Win32_DeviceChangeEvent WHERE EventType=2"
Register-WMIEvent -Query $query -Action { Write-Host "A device has been inserted"}

给Action参数的代码在每次插入设备时被调用。我不知道如何在Ruby中处理这样的查询

最新更新