Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » Совместная работа двух и более скриптов (Как реализовать?)
Совместная работа двух и более скриптов
AndreyДата: Четверг, 10 Мая 2007, 14:22 | Сообщение # 1
Новый участник
Группа: Проверенные
Сообщений: 26
Репутация: 0
Награды: 0
Статус: Offline
Здравствуйте, кто нибудь знает, возможно ли выполнить эти две задачи? Если да, то как.
Задача 1 (Частный случай)
Как заставить отработать скрипт RUN, ТОЛЬКО в том случае, когда прошла успешная проверка (выполнилось некое условие) в скрипте CHECK?

Задача 2 (Общий случай)
Как передать некую переменную из скрипта N в скрипт M ?

А то приходится одну и ту же проверку в каждый скрипт пихать, что не есть хорошо.
Заранее спасибо

Сообщение отредактировал Andrey - Четверг, 10 Мая 2007, 14:32
 
toizyДата: Четверг, 10 Мая 2007, 14:43 | Сообщение # 2
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
Quote (Andrey)
Как заставить отработать скрипт RUN, ТОЛЬКО в том случае, когда прошла успешная проверка (выполнилось некое условие) в скрипте CHECK?

Code
if (условие) then
RunScript("Run")

Добавлено (10 Мая 2007, 14:43)
---------------------------------------------

Quote (Andrey)
Как передать некую переменную из скрипта N в скрипт M ?

Все переменные, которые используются в ММВ, глобальны для всех скриптов. Не вижу проблемы


Жизнь оказалась не такой уж и забавной, как поначалу...
 
AndreyДата: Четверг, 10 Мая 2007, 14:58 | Сообщение # 3
Новый участник
Группа: Проверенные
Сообщений: 26
Репутация: 0
Награды: 0
Статус: Offline
Code
if (условие) then  
RunScript("Run")

Я вот и не пойму что в (условие) надо вписать чтобы оно заработало

Добавлено (10 Мая 2007, 14:52)
---------------------------------------------
Например, у меня имеется скрипт check, который выполняет проверку корректности ввода IP-адреса в chekbox
как после этого заставить работать ДРУГОЙ скрипт, при условии, что проверка прошла успешно?

Добавлено (10 Мая 2007, 14:58)
---------------------------------------------

Quote (toizy)
Все переменные, которые используются в ММВ, глобальны для всех скриптов. Не вижу проблемы

Т.е. правильно ли я понял, что, если я пропишу в одном скрипте произвольную переменную вида summ$=число1$+число2$
то эту переменную (summ$) я могу использовать в другом скрипте?
 
toizyДата: Четверг, 10 Мая 2007, 15:03 | Сообщение # 4
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
Quote (Andrey)
Т.е. правильно ли я понял, что, если я пропишу в одном скрипте произвольную переменную вида summ$=число1$+число2$
то эту переменную (summ$) я могу использовать в другом скрипте?

Да

Добавлено (10 Мая 2007, 15:03)
---------------------------------------------

Quote (Andrey)
Например, у меня имеется скрипт check, который выполняет проверку корректности ввода IP-адреса в chekbox

В студию!


Жизнь оказалась не такой уж и забавной, как поначалу...
 
AndreyДата: Четверг, 10 Мая 2007, 15:12 | Сообщение # 5
Новый участник
Группа: Проверенные
Сообщений: 26
Репутация: 0
Награды: 0
Статус: Offline
Code
**проверка наличия файла файл.exe
path$ = '<SrcDir>\файл.exe'
FileExist("<SrcDir>\файл.exe","path")
If (path=0) Then
err$='Не могу найти в текущей папке файл файл.exe'
LoadText("Titul","err$")
Else
**********************************
**проверка правильности IP адреса
str$=EditBox$+'.'
For i=1 To 4
a=POS(.,str$)
b=VAL(StrCopy(str$,1,a))
If (b=0 | b>255 | a>4) Then
err_IP$='Не верный формат IP адреса'
LoadText("Titul","err_IP$")
Return()
Else
str$=StrDel(str$,1,a)
End
Next i
IP$='Выбран IP адрес: '
summ$=IP$+EditBox$
LoadText("Titul","summ$")
End
**Успешно выполнены эти два условия, как передать результат этой проверки другому скрипту?


Сообщение отредактировал Andrey - Четверг, 10 Мая 2007, 15:26
 
toizyДата: Четверг, 10 Мая 2007, 15:48 | Сообщение # 6
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
Code
**проверка наличия файла файл.exe  
path$ = '<SrcDir>\файл.exe'  
FileExist("<SrcDir>\файл.exe","path")  
If (path=0) Then  
err$='Не могу найти в текущей папке файл файл.exe'  
LoadText("Titul","err$")  
Else  
**********************************  
**проверка правильности IP адреса  
sucess=false
str$=EditBox$+'.'  
For i=1 To 4  
a=POS(.,str$)  
b=VAL(StrCopy(str$,1,a))  
If (b=0 | b>255 | a>4) Then  
err_IP$='Не верный формат IP адреса'  
LoadText("Titul","err_IP$")  
Return()  
Else  
str$=StrDel(str$,1,a)  
End  
Next i  
IP$='Выбран IP адрес: '  
summ$=IP$+EditBox$  
LoadText("Titul","summ$")  
sucess=true
End  
if (sucess=true) Then
   RunScript("RUN")

В скрипте проверяешь значение success. Если False, то понятно, что скрипт не выполнился до конца, т.е. до строки sucess=true, значит, скрипт не должен запускаться.


Жизнь оказалась не такой уж и забавной, как поначалу...
 
AndreyДата: Четверг, 10 Мая 2007, 16:20 | Сообщение # 7
Новый участник
Группа: Проверенные
Сообщений: 26
Репутация: 0
Награды: 0
Статус: Offline
Сейчас попробую...

Добавлено (10 Мая 2007, 16:20)
---------------------------------------------

Quote (toizy)
В скрипте проверяешь значение success.

В каком скрипте? Если в скрипте chek, то тогда это не совсем то, получается (если я правильно понял), что, скрипт RUN запускается автоматом, при sucess=true. Фактически скрипт RUN становится продолжением скрипта CHECK, только с дополнительным условием.
А что делать, если имеется два и более скриптов (например RUN1, RUN2 и RUN3), и запускаться должен только один из них, но с обязательной проверкой вышеописанных условий (или хотя бы одного - проверки IP-адреса)?
Вот и выходит, что для каждого из этих скриптов нужно влудить одну и ту же проверку троекратно.

ЗЫ: В руском хелпе, который у меня, sucess - отсутствует

Сообщение отредактировал Andrey - Четверг, 10 Мая 2007, 16:08
 
toizyДата: Четверг, 10 Мая 2007, 16:58 | Сообщение # 8
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
Quote (Andrey)
Вот и выходит, что для каждого из этих скриптов нужно влудить одну и ту же проверку троекратно.

А ты как хотел?

Quote (Andrey)
sucess - отсутствует

Ты не там смотришь. sucess - моя переменная
Code
sucess=true

Это тебе ориентир для того, чтобы знать о результатах проверки. А уже в том месте, где ты вызываешь скрипт (run, run1, run2, да по барабану), ты должен проверить, а не true ли sucess?


Жизнь оказалась не такой уж и забавной, как поначалу...
 
AndreyДата: Четверг, 10 Мая 2007, 19:16 | Сообщение # 9
Новый участник
Группа: Проверенные
Сообщений: 26
Репутация: 0
Награды: 0
Статус: Offline
Все понял! Спасибо еще раз

Добавлено (10 Мая 2007, 19:16)
---------------------------------------------
Пошел дальше себе мозги ломать biggrin

 
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » Совместная работа двух и более скриптов (Как реализовать?)
  • Страница 1 из 1
  • 1
Поиск: