Доброго времени суток.
Столкнулся вот с какой проблемой.
Есть СОМ-объект. Подписываюсь на его событие. В событие из коннектора беру ссылку на окно. У окна через Window.ScriptControl.Run() вызываю функцию.
Не работает. Если быть точным не заходит в функцию скрипта.
Если в событии поставить debugger; - все отрабатывает.
С чем может быть связано такое поведение?
Заранее спасибо за ответ.
Нравится
"Доленко Юрий" написал:. В событие из коннектора беру ссылку на окно
Это как?
кхм... поставил задержку все заработало : )
видимо не успевало передавать управление .. или что-то типа того...
"Underscore a.k.a. _" написал:Это как?
ну в функции, которая подписана на событие, я беру из аттрибутов коннектора ссылку на окно...
А, что-то я торможу. Ну может действительно окно немного не успевало. тогда чтоб наверняка в атрибутах окна выставляйте какой-то флаг вконце OnPrepare и в обработчике события делайте цикл со слипами, пока этот флаг не выставится.
"Underscore a.k.a. _" написал:А, что-то я торможу. Ну может действительно окно немного не успевало. тогда чтоб наверняка в атрибутах окна выставляйте какой-то флаг вконце OnPrepare и в обработчике события делайте цикл со слипами, пока этот флаг не выставится.
Можно было бы проще, просто при помощи яваскриптовой функции setTimeout, но террасофт ее не понимает почему-то...
Я просто в событии включаю таймер, потом вызываю функцию скрипта и все работает.
Просто таймер синхронизации не обеспечивает. Т.е. будет работать с определенной вероятностью,которая увеличивается с увеличением времени задержки.