当我运行下面的脚本时,我收到第一台打印机不存在的错误。这是真的,第一台打印机没有连接,所以输出给了我这个: “c:\ temp \ rmprintlong.vbs(4,1)WSHNetwork.RemoveNetworkDrive:此网络连接不存在。”然后脚本死了......这就是问题:脚本死了!!! 我仍然需要它来删除此脚本中的第二台打印机!如果它在脚本中找不到其中一台打印机,我仍然需要使用下一步删除打印机命令来恢复它! 这是我正在使用的代码:
Set WshNetwork = WScript.CreateObject("WScript.Network")
PrinterPath = "\\p1\(SW)_HP_LaserJet_8150_Series_PCL"
WshNetwork.RemovePrinterConnection PrinterPath, true, true
PrinterPath = "\\p1\(NE)_HP_LaserJet_5M"
WshNetwork.RemovePrinterConnection PrinterPath, true, true
Wscript.Quit(1)
我是否只需在代码的第一行添加“On Error Resume Next”..?
答案 0 :(得分:1)
这取决于脚本的质量要求。如果成功或失败无关紧要,请将OERN放在第一行(并符合脚本专家的标准)。
脚本的妥协/最小影响/ pythonic变体:
Set WshNetwork = WScript.CreateObject("WScript.Network")
PrinterPath = "\\p1\(SW)_HP_LaserJet_8150_Series_PCL"
On Error Resume Next ' don't care if this fails
WshNetwork.RemovePrinterConnection PrinterPath, true, true
On Error GoTo 0 ' open eyes again
PrinterPath = "\\p1\(NE)_HP_LaserJet_5M"
WshNetwork.RemovePrinterConnection PrinterPath, true, true
Wscript.Quit 1 ' no parameter list () when calling a sub
这会将“我不关心”部分限制为单一操作。