首页 > 编程 > VBScript > 正文

用vbs确定可移动驱动器的连接时间

2019-10-26 17:59:08
字体:
来源:转载
供稿:网友
问:
您好,脚本专家!如何确定 USB 闪存驱动器的连接时间?
-- PS
答:
您好,PS。是的,我们承认:脚本专家确实懒惰。(尤其是在周五,这一天我们必须编写周一专栏。)可能有一种方法能够专门监视何时插入 USB 闪存驱动器。但是,我们找不到这种方法,至少不能马上找到它。不可否认,或许我们可能感觉有点困难。但是,我们还是决定编写一个脚本,用来告诉您任何可移动驱动器与计算机连接(或断开连接)的时间。我们希望这样可以为您提供一些附加价值和灵活性。
嗨,我们并没有说我们确实已为您提供了附加价值和灵活性。我们只是希望自己能够做到。
实际上,这是一个容易编写的小脚本。另外,它还有一个优点,就是能够在任意版本的 Windows 上运行。(最初,我们曾经不加思索地想要使用 Win32_VolumeChangeEvent 类来完成这项任务,但是,该特定 WMI 类只能在 Windows Server 2003 上找到。)
该段代码如下所示:
复制代码 代码如下:

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 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表