Volniy

|
Posted: Wed Jan 02, 2008 16:34 Post subject: |
|
|
DrShark wrote: | столкнулся с тем, что VBScript не позволяет отнимать число от переменной, в которую уже занесено число. |
С Новым Годом Вас, уважаемый
Списываю эту чушь на бурное праздничное застолье
DrShark wrote: |
Code: | Option Explicit
Dim ShellObj, argument, oArgs, ArgNum, teststr, MyLng
Set ShellObj = CreateObject("WScript.Shell")
Set oArgs = WScript.Arguments
ArgNum = oArgs.Count
Msgbox ArgNum
LngArg = ArgNum - 1
MsgBox LngArg
MyLng = WScript.Arguments(LngArg)
MsgBox MyLng |
Msgbox'ы напиханы для отладки.
Так вот, если не использовать переменную LngArg, а прямо писать, например,
MyLng = WScript.Arguments(0), то всё работает.
LngArg = ArgNum - 1 приводит к ошибке "Variable is undefined"
Что тут "не так"? |
Ошибка в том, что переменная LngArg не была объявлена, как этого требует инструкция Option Explicit, до первого использования этой переменной в коде.
Так что или объяви ее явно (Dim LngArg) или, если ты не боишься последующих ошибок, связанных с банальными описками и тп, просто удали строчку Option Explicit из скрипта.
PS Наверное, это уже в Автоматизацию просится, там ведь есть тема про WSH. |
|