用VBS检测U盘插入和弹出事件

标签: , , , ,

貌似网上很多人问怎么用VBS检测U盘插入和弹出,其实这很容易实现,WMI赋予了VBS十分强大的功能。可以说,对WMI的掌握程度的多少直接决定了你的VBS水平高低。看过网上普遍流传VBS版U盘小偷程序,基本上都是靠无限循环实现的,一点技术含量也没有,文章的末尾给出了我写的VBS版U盘小偷程序的下载地址。虽然用WMI也得无限循环,但是效率是不一样的。

使用WMI的Win32_VolumeChangeEvent类就可以实现,下面是示例代码,更详细的信息请参考MSND文档

Const Configuration_Changed = 1
Const Device_Arrival = 2
Const Device_Removal = 3
Const Docking = 4
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" _
    & strComputer & "\root\cimv2")
Set colMonitoredEvents = objWMIService. _
    ExecNotificationQuery( _
        "Select * from Win32_VolumeChangeEvent")
Do
    Set objLatestEvent = colMonitoredEvents.NextEvent
    Select Case objLatestEvent.EventType
    	Case Device_Arrival
    		WScript.Echo "U盘插入,盘符为" & _
    		objLatestEvent.DriveName
    	Case Device_Removal
    		WScript.Echo "U盘弹出,盘符为" & _
    		objLatestEvent.DriveName
	End Select
Loop

我也写了一个U盘小偷程序,自以为比网上抄来抄去的代码要好,感兴趣的可以下载来看看。

[download id=14]

赞赏

微信赞赏支付宝赞赏

随机文章:

  1. 为.VBS和.JS文件添加右键以管理员运行菜单
  2. VB6拾遗:调用函数指针
  3. VBS技术内幕:数组的内部实现
  4. MulDiv函数
  5. 用Tiny C Compiler编译Lua

9 条评论 发表在“用VBS检测U盘插入和弹出事件”上

  1. […]  转自:http://demon.tw/programming/vbs-usb-insert-remove.html […]

  2. still说道:

    不会用啊

  3. wcnddm说道:

    学习了!

  4. fien说道:

    xue xi le ..

  5. 路过的人说道:

    下载下来学习学习

  6. 你好说道:

    我也来下载一下

  7. guest说道:

    学习

  8. 来下载说道:

    怎么下载啊?

  9. guest说道:

    学习

留下回复