CODE: [Copy to clipboard]
Set oLocator = CreateObject("WbemScripting.SWbemLocator")
Set oSink = WScript.CreateObject("WbemScripting.SWbemSink","Event_")
Set oWMISvc = oLocator.ConnectServer
oWMISvc.ExecNotificationQueryAsync oSink, _
"Select * From __InstanceCreationEvent WITHIN 5 " & _
"Where TargetInstance ISA 'Win32_LogicalDisk'"
Do
WScript.Sleep 1000
Loop
Sub Event_OnObjectReady(oEventSource,oContext)
Dim str,strFileList
str = oEventSource.TargetInstance.Name
For Each itemFile In oWMISvc.ExecQuery( _
"Select * From CIM_DataFile Where Drive = '" & str & "'")
strFileList = strFileList & itemFile.Name & vbCrLf
Next
WScript.Echo str & vbCrLf & strFileList
End Sub
只是简单地当等待增加盘符,事件实例被创建后则打印出新增加的盘符下所有的文件名。并没有对新增加盘符的类型做检测,另外也可能存在其他一些问题。