我阅读了以下文章:Using Ruby & WMI to Detect a USB Drive
但是,此方法需要我在循环内保持轮询。是否可以注册并在插入/弹出 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 中处理这样的查询。
关于ruby - 如何在不使用 Ruby 和 WMI 进行轮询的情况下检测 USB 插入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8055839/