2016-03-19 5 views
0

Ich schreibe ein VBS-Skript und möchte den LEN-Befehl verwenden (als eine von vielen) überprüft der Hostname korrekt festgelegt ist. Hostname ist ABCD12Verwenden von LEN, um Hostnamen zu qualifizieren ist korrekt Fehler

ComputerName gibt den korrekten Wert zurück und der Hostname beginnt mit ABCD, so dass es fortfährt - jedoch gibt LEN einen Wert von 0 (nicht 6) zurück, obwohl der Hostname 6 Zeichen lang ist. Warum ist das?

If left(ucase(ComputerName),4) = "ABCD" then 
    else  
Wscript.quit(666) 

End if 

iLen=Len(ComputerName) 

If ilen <> 6 Then 
    else 
Wscript.quit(666) 

End if 

Antwort

1

Ihr Skript funktioniert

Es ist nur, dass Sie mess up mit diesem If ilen <> 6 Then

es

If left(ucase(ComputerName),4) = "ABCD" then 
    else  
Wscript.quit(666) 

End if 

iLen=Len(ComputerName) 

If ilen = 6 Then 
    else 
Wscript.quit(666) 

End if 

sein sollte, aber Sie würden besser so codieren, es ist viel mehr verständlich

If left(ucase(ComputerName),4) <> "ABCD" then 
    Wscript.quit(666) 
End if 

If Len(ComputerName) <> 6 Then 
    Wscript.quit(666) 
End if 

oder alles in einem

If (left(ucase(ComputerName),4) <> "ABCD") or (Len(ComputerName) <> 6) then 
    Wscript.quit(666) 
End if 
Verwandte Themen