Есть ли способ для приложения AIR 1.5 для чтения из stdin и записи stdout/stderr?
Я изучал классы Adobe AIR 1.5, связанные с файловой системой, но до сих пор я не видел ничего такого, что упоминало бы, как взаимодействовать с stdin / stdout / stderr. Это немного удивительно, так как AIR позволяет взаимодействовать с локальной файловой системой, а класс FileStream существует.
Я хочу запустить приложение AIR из родительского процесса, а затем взаимодействовать с приложением AIR через асинхронный ввод-вывод через stdin / stdout. Избегать необходимости использовать порт на локальном хосте и делать сокет ввода-вывода. (Да, речь идет о соединении Java и AIR в кроссплатформенной манере в стиле Мерапи.)
2 ответа
Я не думаю, что это возможно - вам придется использовать сокеты. Если вы находитесь в Windows, вы можете проверить, позволяет ли что-то вроде http://www.northcode.com/ добиться этого.
Действительно, я исследовал документацию AIR 1.5 и, похоже, они исключили какой-либо доступ к файловым каналам stdin, stdout, stderr - несмотря на то, что они доступны на всех платформах, которые поддерживает AIR.
Я полагаю, что мысль о том, что приложение с графическим интерфейсом не должно беспокоиться о чем-то, что обычно связано с программами командной строки. Тем не менее, для родительского процесса, для двунаправленного взаимодействия с дочерним процессом, такие каналы вполне подойдут (я написал множество программ многопроцессорной обработки perl, которые работают таким образом).
Библиотека мостов Merapi, реализованная с помощью межпроцессных каналов stdin, stdout, stderr, предоставит AIR оттенок возможности Microsoft PowerShell (которая может маршалировать объекты.NET через межпроцессные каналы std).