| Makcumka |
20.01.2007 12:37 |
Взаимодействие Flash и внешних (локальных!) прогамм!
Какими способом можно заставить Flash-ку взаимодействовать с локальными (не серверными) приложениями?
Т.е. есть flash'ка которая запускается локально. Но поскольку возможности ActionScript не безграничны возникает необходимость взаимодействовать с программой, которая "способна на многое" ( Примером такой ситуации: внешняя программ проделывает сложные математические расчёты а flash-мувик должен их красиво иллюстрировать).
Поизучав вопрос нарыл несколько способов, но способы далеко не элегантные:away:. Может ли кто-нибудь предложить другие способы (не обязательно элегантные, но другие;)) - С помощью ActiveX-компоненты flash-мувик можно засунуть внутрь приложения написанного на Delphi http://actionscript.com.ua/wfsection...ticleid+96.htm http://actionscript.com.ua/wfsection...ticleid+56.htm, но как при этом обмениваться информацией с мувиком (т.е. командами и/или данными) не понятно (а если не обмениваться информацией то зачем это вообще нужно?)
- Есть отличный механизм External Interface http://flash-ripper.com/articles/fla...-interface.htm, но взаимодействовать с JavaScript'ом есть смысл только если эта flash-ка загружена из web и должна каким-то образом взаимодействовать со страницей на которой находиться, а в нашем "локальном" случае JavaScript не дает возможность сделать что-то такое, что не возможно в ActionScript. А как взаимодействовать с другого сорта приложениями из статьи непонятно (может кто знает - подскажите).
- От безъисходности у меня родилась следющая идея: написать программу, которая бы прикидывалась web-сервером (открыла бы, например, порт 8080 на локальной машине) и дала команду браузеру открыть себя (т.е. открыть http://127.0.0.1:8080/). В случае такого обращения к ней программа передаёт браузеру (всё происходит по протоколу http) страницу содержащую только flash-мувик. Когда мувику надо обменяться какой-то инфой с внешней программой он использует обычный LoadVars, а внешняя программа фабрикует http-пакеты подобные ответу php-скрипта. Такое решение содержит несколько очевидных минусов: во-первых, если внешняя программа хочет послать какую-то команду мувику, то как сделать чтобы мувик об этом узнал? во-вторых, написание такой программы требует серьёзного времени, а мы хотим всё сделать быстро и красиво:rolleyes:
Какие у Вас есть мысли/опыт по данному вопросу. Огромным плюсом было бы, если внешнее приложение (не flash) было бы незаметно :cool: и весь интерфейс пользователю предоставлялся бы через flash.
|