VBS检测U盘
发布网友
发布时间:2022-05-20 20:48
我来回答
共3个回答
热心网友
时间:2023-11-24 07:51
dim s
set fso=createobject("scripting.filesystemobject")
do
Set Disks =fso.Drives
For Each Disk in Disks
if Disk.IsReady and Disk.DriveType=1 then
if s<>Disk.DriveLetter then
msgbox"发现U盘"&Disk.DriveLetter&":\!",4096+64,"温馨提示"
s=Disk.DriveLetter
end if
end if
next
wscript.sleep 2000
loop
如果要做得更好,可以定义s(),可以检测多个U盘同时连接
PS:把“wscript.sleep 2000 ”去掉后,那个弹出框又关不了
wscript.sleep 2000 的作用是延时2秒检查一次。去掉的话,是一直死循环检测,你关掉一个对话框,电脑立马又弹出一个。你想跟电脑比反应速度么?^_^
你只要拔掉U盘,再关掉这个对话框就可以了
PS:若要是没有U盘,如何弹出提示"没有U盘"
因为这个脚本是一直运行的,而你插入U盘的时间是相对较少的,所以没有必要“在没有U盘时弹出提示"没有U盘" ”,真的弹出的话,2秒一个"没有U盘" ,你不烦,电脑也烦!!
热心网友
时间:2023-11-24 07:52
你在哪里下载的这东西,那人也够烂的 ,用循环没条件,进入死循环都不知道
修改之后的代码如下:
dim a
Set fso = CreateObject("scripting.filesystemobject")
Set Disks = fso.Drives
For Each Disk In Disks
If Disk.IsReady And Disk.DriveType = 1 Then
MsgBox "发现U盘,盘符是:" & Disk.DriveLetter & ":\", 4096 + 64, "温馨提示"
a=true
End If
Next
if a =false then
msgbox "没有发现U盘,请检查U盘是否插好",,"温馨提示"
End if
用任务管理器结束的是进程,肯定能灭掉啊,如果灭不掉,你就准备重装系统吧!呵呵
热心网友
时间:2023-11-24 07:52
dim a as boolean
Set fso = CreateObject("scripting.filesystemobject")
Set Disks = fso.Drives
For Each Disk In Disks
If Disk.IsReady And Disk.DriveType = 1 Then
MsgBox "发现U盘" & Disk.DriveLetter & ":\!", 4096 + 64, "温馨提示"
a=true
End If
Next
if a =false then msgbox "没有发现U盘"
你用了DO LOOP 没加条件 就变无限循环 当然得用任务管理器 来强行终止了。