![]() |
бесконечный опрос буфера обмена или файла
Здравствуйте . вопрос по AIR
Вопрос касается считывания данных из буфера обмена или файла ( FileStream) - не зависнет ли приложение рано или поздно, если этот процесс повесить в бесконечный цикл. т.е. есть другая программка, которая может или в файл или в буфер обмена ( системный) складывать интересующую меня информацию, мне же после появления инфы надо выполнять определенные действия в приложении. кроме как бесконечного опроса файла или же буфера - можно как-то реализовать подобную вещь ? (без поднятия сервера) |
Ну, а зачем цикл? По таймеру можно обращаться к буферу или к файлу. Не фонтан, конечно, но все же...
А так, слить данные в аир-приложение из другой проги можно, наверно, через LocalConnection. Только там объем за раз не более 40кб, вроде. А, ну и AMF-сериализацию нужно еще делать. LC канал опрашивается плеером автоматически, код для этого не нужен. |
я и имел в виду таймер, но, у таймера есть внутренний счетчик и, неизвестно, что произойдет, скажем часов через десять работы приложения ... память не съестся или еще что ...
хмм ... а как через по LocalConnection подключить локальный файл, он это вообще предусматривает ? |
Файл подключить нельзя. ЛЦ - это расшаренняа область памяти, куда можно сторонней прогой чего-то записать, а плеер эти данные увидит, вобщем-то плеер также в цикле обращается к этой области, только реализовано это нативно, без АС, работает по принципу блокировок очерёдного доступа: пока одно приложение что-то делает, пишет туда или читает, другие ждут.
О файлах речь тут не идет. А, да, сокет еще есть. Можно в сторонней проге поднять простенький сокет-сервер, а из айра к нему приконнектиться. Есть примеры расширений для айра. Проект Shu, например. Если не ошибаюсь, там взаимодейтсвие с оболочкой идет именно через локальный сокет. Ну, и конечно, реализация любого из этих подходов в вашем случае потребует модификации вашей сторонней программы, которая должна поставлять данные плееру. |
мда ... видимо без сокетов не обойтись =/
попробовал с буфером в enter_frame - нормально все работает, но, если я начинаю активно использовать буфер (не в программе, а в винде, для своих нужд) , то начинаются конфликты =/ Добавлено через 18 минут и все-таки опрос буфера в enter_frame + try-catch - и можно обмениваться данными с любым другим приложением без особых проблем ) |
А не подскажете, как вы вынимаете данные из буфера обмена в плеере? То бишь в АС?
|
| Часовой пояс GMT +4, время: 05:10. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.