Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Как вызвать Flash функцию из C++? (http://www.flasher.ru/forum/showthread.php?t=78802)

MaIron 25.04.2006 13:25

Как вызвать Flash функцию из C++?
 
Связь между C++ и роликом налажена. Ролик вызывает функции С++.

Единственно что неполучается так это сделать вызов функций Flash из С++.

Пробую так:
v_flash - это контроллирующая переменая ActiveX контейнера.

Код:

v_flash.CallFunction("test");
При вызове вылазиет Мессага и всё. Никакого эфекта.

Может кто в курсе как это сделать ?

toFlash 25.04.2006 16:37

Я делаю так
Код:

v_flash.SetVariable("_root.RunFunk.FunkParam","предаем значение параметра");
        v_flash.TCallFrame("_root.RunFunk",2);

в 3 кадре клипа _root.RunFunk выполняется ф-я с параметром FunkParam

Ничего лучше пока не придумал, ежели что найдешь -пиши ;)

MaIron 25.04.2006 19:18

Ок. Спасибо. Я тоже так делаю, я просто думал, может есть более правильный способ.

son_of_war 26.04.2006 06:02

перед тем как вызывать CallFunction во флэше надо сделать
flash.external.ExternalInterface.addCallback
где в параметрах и указать имя вызываемой функции, но это ессно только в 8 флэшке появилось

Хэш 20.09.2006 15:21

ShockwaveFlash1.CallFunction('<invoke name="myfunc" returntype="xml"><arguments><string>433333</string></arguments></invoke>');

гы, не ожидали

gl0om 22.09.2006 01:24

я ниразу не ставил перед сабой такой задачи, но возможно можно наладить связь между флешом и с++ приложением через сервер на основе сокетов.

http://flasher.ru/forum/showpost.php...7&postcount=16

я тут как раз примерчик выложил. Влеш предает серверу сообщение Im online и при нажати на квадратик передает сообщение send. Сообщения мжно записывать в очередь и вызывать требуемые ф-ии. Впринципе могу дать исходник серва - просите если надо. Держит 200+ подключений это точно, после 200 устал запускать флеш клиенты =) Работает по ТСП протоколу локально и по сети, неблокирующиеся сокеты.. На каждое подключение вешается 2 треда на прием и отдачу - можете сами дописать если чо надо, там просто.

Иван Старков 16.02.2007 05:08

CallFunction работает из под C++ если вызывать через IDispatch интерфейс - метод Invoke чтоб не парится с getidsofnames сразу подставляя нужный dispid 0xc6
какого теперь уже компания адобе не предусмотрела вызов по человечески - я хз.

Dimas_Art 14.04.2008 11:14

Хм... очень интересно...
У меня проект на AS 3.0 (Правда это FLEX 2.0). Прописываю в нем ExternalInterface.addCallback("CallMeFromApplication", InternalFunction);
Как я понял это определение функции, как внешней и доступ к ней теперь по идее должен. Правильно я понял?
Потом берем C++ Builder и атачим туда нашу флешку и пишем что-то подобное - WideString Response = ShockwaveFlash1->CallFunction(WideString("CallMeFromApplication"));
Выдает неопознанную ошибку. Возможно я чего-то не допонял?? Помогите плз. Очень нужно!


Часовой пояс GMT +4, время: 23:53.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.