Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Обмен кнопками 
Author Message
Volniy



PostPosted: Wed Jan 02, 2008 16:34    Post subject: Reply with quote

DrShark wrote:
столкнулся с тем, что VBScript не позволяет отнимать число от переменной, в которую уже занесено число.


С Новым Годом Вас, уважаемый Very Happy
Списываю эту чушь на бурное праздничное застолье Laughing

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.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group