本帖最后由 batman 于 2013-1-22 22:43 编辑
因为这个代码所需要达到的目的是监控U盘的插入和移除,所以用到了WMI事件监控的ExecNotificationQuery方法(一般我们使用的是ExecQuery查询方法),使用了这个方法后一旦有了创建、修改和删除WMI事件的发生,系统就会立即发出通知(具体看你用什么样的方式来通知)。而语句中的Within 10所指的是每10秒临控一次,Where TargetInstance isa 'Win32_LogicalDisk'是定义发生创建、修改和删除的事件是Win32_LogicalDisk逻辑磁盘服务发起的。
另外root\cimv2是WMI四类名称空间之一不是路径,它所指向的是WINDOWS管理规范实例空间,而Win32_Process是其下的用来访问进程实例的类,正确的代码如下:- Dim objWMI, objItems, objItem
- Set objWMI = GetObject("Winmgmts:\\.\Root\Cimv2")
- Set objItems = objWMI.ExecQuery("Select * From Win32_Process")
- For Each objItem In objItems
- WScript.Echo objItem.Name
- Next
- Set objWMI = Nothing
复制代码
|