Имя: Пароль:
IT
 
MSScriptControl - в каких единицах задается тайм-аут
0 Гений 1С
 
гуру
07.12.09
14:28
Ставлю timeout = 120 (2 минуты). Выдается сразу.
В чем он, в тысячных секудны? Как задать 2 минуты?
Описание MSSCriptControl не нашел, хотя и долго искал.
1 Господин ПЖ
 
07.12.09
14:29
открой для себя милисекунды...
2 Гений 1С
 
гуру
07.12.09
14:34
(1) ты точно уверен, что в МС?
3 Господин ПЖ
 
07.12.09
14:35
ну проверь на 120 000
4 Гений 1С
 
гуру
07.12.09
14:37
(3) проверять сложно из-за особенностей алгоритма
5 Иду
 
07.12.09
14:38
2*60*1000
6 skunk
 
07.12.09
14:40
(4)фигасе ... а просто набрать необходимое
7 Гений 1С
 
гуру
07.12.09
14:41
(5) Как проверить в консоли кода?

Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
Скрипт.language="vbscript";
Скрипт.timeout = 120000; //120 секунд
           
КодВозврата = Скрипт.eval("???????????");

Что забить на место ??????, чтобы оно выполнялось бесконечно?
8 smaharbA
 
07.12.09
15:10
КодВозврата = Скрипт.eval("while (true)");
9 skunk
 
07.12.09
15:11
теперь вопрос ... зачем две секунды если скрипт бесконечный
10 smaharbA
 
07.12.09
15:19
это для джабы
для вбс Скрипт.ExecuteStatement("do while true:loop")
но оле замучает вопросом
11 Гений 1С
 
гуру
07.12.09
15:35
(9) ну бесконечный цикл для проверки. (10) спасибо, счас попробую
12 Гений 1С
 
гуру
07.12.09
15:36
(10) Ура!

Спасибо, Смахарба!

Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
Скрипт.language="vbscript";
Скрипт.timeout = 60000; //120 секунд        
КодВозврата = Скрипт.ExecuteStatement("do while true:loop");

Выдало ошибку через минуту:

{(5)}: Ошибка при вызове метода контекста (ExecuteStatement): Произошла исключительная ситуация (ScriptControl): The script was aborted because execution exceeded the specified timeout period.
КодВозврата = Скрипт.ExecuteStatement("do while true:loop");
по причине:
Произошла исключительная ситуация (ScriptControl): The script was aborted because execution exceeded the specified timeout period.
13 smaharbA
 
08.12.09
07:52
Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
Скрипт.language="vbscript";
Скрипт.timeout = 60000; //120 секунд        
Скрипт.ExecuteStatement("a=1");
Скрипт.ExecuteStatement("do while true:loop:a=0");
КодВозврата = Скрипт.Eval("a);