如果驱动器号和路径匹配,vbscript 删除映射的驱动器

vbscript Remove mapped drive if the drive letter and path matches

这是我的 vbscript,如果它与字母和路径匹配,它应该删除 netwrok 驱动器,但它不能正常工作,并且阵列显示 13 个映射驱动器,而我的计算机上只有 5 个。它不应该检查用户映射计算机上所有可用的映射驱动器吗?

    Set objShell = CreateObject("Wscript.Shell")

Set objNet = WScript.CreateObject("Wscript.Network") 

Set objExec = objShell.Exec("net use ") 
strMaps = LCase(objExec.StdOut.ReadAll)
MapArray=split(strMaps,CHR(10))

for x=1 to ubound(MapArray) 
    if instr(MapArray(x),"W:") AND instr(mapArray(x),"\path\folder$") then 
        objNet.RemoveNetworkDrive "W:",true,true
    end if

    if instr(MapArray(x),"U:") AND instr(mapArray(x),"\path\folder$") then
            objNet.RemoveNetworkDrive "U:"
    end if  

next

枚举网络驱动器。

Set NetDrives = WScript.CreateObject("WScript.Network").EnumNetworkDrives
For X = 0 to NetDrives.Count -1 Step 2
    MsgBox NetDrives(x) & " " & NetDrives(x+1)
Next

做你想做的事。我们通常不测试然后做。我们做并测试发生了什么。测试大多数事情通常会占用几乎与实际相同的资源。

On Error Resume Next
Set WshNetwork = WScript.CreateObject("WScript.Network")
WshNetwork.RemoveNetworkDrive "Y:"
Msgbox err.description    

同样,任何涉及文件和注册表(因为用户删除)和网络或互联网(因为本质上不可靠)的东西都应该使用错误处理。