在多个USB驱动器上删除文件夹VBS
我正在寻找同时删除多个USB驱动程序上的文件夹。在多个USB驱动器上删除文件夹VBS
sDeleteFolder = "\Test"
Set oFS = CreateObject("Scripting.FileSystemObject")
Set dUSBKeys = ScanForUSBKeys()
For Each oUSBKey in dUSBKeys.Keys
If Left(oUSBKey, 1) = "\" Then
sKey = oUSBKey
Else
sKey = oUSBKey & "\"
End If
oFS.DeleteFolder sdeleteFolder, sKey
Next
Set dUSBKeys = Nothing
Set oFS = Nothing
MsgBox "Done Del all the folder from USB Drivs", vbOKOnly+VBINformation+VBSystemModal, "DONE"
Function ScanForUSBKeys()
Set oWMI = GetObject("winmgmts:\\.\root\cimv2")
Set dTemp = CreateObject("Scripting.Dictionary")
Set cDisks = oWMI.ExecQuery("Select InterfaceType,MediaType,PNPDeviceID,DeviceID,Size from Win32_DiskDrive")
For Each oDisk in cDisks
If InStr(LCase(oDisk.InterfaceType),"usb") > 0 AND InStr(LCase(oDisk.MediaType),"removable") > 0 _
AND InStr(LCase(oDisk.PNPDeviceID),"blackberry") = 0 AND InStr(LCase(oDisk.PNPDeviceID),"ipod") = 0 _
AND NOT oDisk.PNPDeviceID = "" Then
Set cDrivePartitions = oWMI.ExecQuery("ASSOCIATORS OF {Win32_DiskDrive.DeviceID='" & _
oDisk.DeviceID & "'} WHERE AssocClass = Win32_DiskDriveToDiskPartition")
For Each oDrivePartition in cDrivePartitions
Set cDriveLetters = oWMI.ExecQuery("ASSOCIATORS OF {Win32_DiskPartition.DeviceID='" & _
oDrivePartition.DeviceID & "'} WHERE AssocClass = Win32_LogicalDiskToPartition")
For Each oDriveLetter in cDriveLetters
dTemp.Add oDriveLetter.DeviceID, 1
Next
Set cDriveLetters = Nothing
Next
Set cDrivePartitions = Nothing
End If
Next
Set cDisks = Nothing
Set ScanForUSBKeys = dTemp
Set dTemp = Nothing
Set oWMI = Nothing
端功能
我不断收到一个错误:类型不匹配:oFs.DeleteFolder'
行12字符5
感谢您抽出时间来阅读我的文章。
- 研究的文档的.DeleteFolder
- 确保当你调用子
- 使用.BuildPath你传递的完整路径(不只是“\测试”)及相应的布尔(不像oUSBKey字符串)构建完整路径
- 使用VBScript的良好功能。例如为:
Option Explicit
,声明SPATH为const - 不要使用
Set x = Nothing
白白
试试这个代码
sDeleteFolder = "\Test"
For Each oUSBKey in dUSBKeys.Keys
sKey = oUSBKey & sDeleteFolder
oFS.DeleteFolder sKey
Next
需要尝试一下。我正在寻找只删除一个文件夹。测试目录只。 。 – user2559533
多数民众赞成在不同的问题...你不需要通配符来删除一个文件夹。 – Susilo
我尝试更新代码。谢谢你的工作非常感谢 – user2559533
谢谢你的信息。希望可以设置补丁。但试图同时从4个或更多的USB驱动程序删除文件夹。我会研究你的答案。 – user2559533