Связь между приложениями AIR(Flex) и C++

Мне нужно иметь возможность обмениваться данными между двумя приложениями, которые находятся на одном компьютере. Один использует Flex, а другой — C++. Я хотел бы иметь возможность вызывать функции и передавать аргументы друг другу. Как лучше всего общаться между ними? Я думал об использовании сокетов.


person asawilliams    schedule 30.09.2009    source источник


Ответы (2)


На данный момент да, вам нужно будет использовать сокеты.

AIR 2.0 предоставит доступ к собственным процессам, но для этого потребуется собственный (для каждой ОС) установщик. Дополнительная информация: http://www.mikechambers.com/blog/2009/09/22/fotb-slides-advanced-desktop-development-with-adobe-air/

person Christophe Herreman    schedule 30.09.2009

Что касается AIR 1.x, Майк Чемберс опубликовал образец библиотеки под названием CommandProxy, который делает свое дело. Он предоставляет код для AS3 и .NET, который можно легко перенести на C++, если у вас есть достойный синтаксический анализатор XML.

Основная идея состоит в том, что каждый компонент может отправлять друг другу XML-пакеты по сети, где каждый из них имеет идентификатор, чтобы гарантировать, что запрос/ответ может быть связан вместе. Однако и код AS3, и код .NET не учитывают медленные или высокие скорости TCP/IP, когда два фрагмента XML могут быть отправлены в одном пакете или один фрагмент XML может быть разделен на два. В любом случае, это делает свое дело.

Кроме того, вы можете найти библиотеку C++ AMF (формат сообщений ActionScript), чтобы вы могли сериализовать объекты AS3 по сети, что имело бы более «интегрированный» вид.

person mimetnet    schedule 08.10.2009