使用LIKE比较字符串"Sub或Function not defined"的VBS

ped*_*leo 3 vbscript

我正在尝试制作一个脚本来将网络打印机连接到用户计算机.该脚本使用需要打印机作为参数的计算机名称.

打印机名称与其打印服务器名称相似,例如.server_USA有打印机,如printer_USA01,printer_USA02.

但是当它到达第一个时,它会抛出错误"Sub或Function not defined"...为什么?

Set shl = WScript.CreateObject("WScript.Shell")
strName = Wscript.Arguments.Item(0)

'input Printer name
strPrinter = InputBox("Please enter share name of printer to install:", _
    "Add network printer")

if strPrinter = "" then
    msgbox "Can't be empty."
    WScript.quit

elseif strPrinter Like "printer_USA*" then
    strServer = server_USA

elseif strPrinter Like "printer_SPAIN*" then
    strServer = server_SPAIN

else
    'Printer name NOT registered, input printserver manually:
    strServer = inputbox("Please enter the name of the printserver","printserver")

    if strServer = "" then
        msgbox "Can't be empty."
        WScript.quit
    End if

End if

'ADD
shl.run "RUNDLL32 PRINTUI.DLL,PrintUIEntry /ga /c\\" & strName & " /n\\" & strServer & "\" & strPrinter
Run Code Online (Sandbox Code Playgroud)

ren*_*ene 7

VBScript中没有Like运算符.你可以使用Instr.

if strPrinter = "" then
    msgbox "Can't be empty."
    WScript.quit

elseif Instr( 1, strPrinter, "printer_USA", vbTextCompare ) > 0 then
    strServer = server_USA
Run Code Online (Sandbox Code Playgroud)

vbTextCompare常量(value = 1)用于执行文本比较