![]() |
scarbo, без кода и раскладки вам как помочь? Покажите запросы и опишите кто где лежит.
|
alexcon314, оперативный релиз )
wolsh прав - заголовок окна пугающий :) На мой взгляд, было бы удобный выводить апсолютный путь файла. То есть реальный адрес по которому не удалось найти фаил. ещё страшная вещь: меседжбокс появляется !под! окном флеша. То есть если флеш в режиме фулскрин - фенита ля камедия, спасает альт+таб с поиском окна ошибки либо диспетчер задач. |
Кстати, это ведь кажется нерешаемая проблема - поверх фуллскрина (а каждая уважающая себя презентация обычно в фуллскрине))) уже ничего не покажешь, т.е. режим будет сброшен. Если при этом открывается нужный файл, еще ниче, а так... Может (правда не уверен) было бы интересно получать во флэшку сообщение что файл не нашли? И там уже стильно извиняться))))
Про абсолютный путь тоже ЗА. Только настаиваю на необходимости поясняющего ситуацию текста, а не просто пути. |
ну если предположить, что при желании открыть пдф нам не так уж нужен фулскрин уже - его можно принудительно сбрасывать перед запуском файла самочтоятельно.
В таком случае нужно только наладить, по возможности, чтоб диалог окно было над окном флеша. + ха, или чтоб flrun.exe запускала альтернативный error.exe с пояcнительным текстом, который благополучно откроется поверх фулскрина :D |
Странно,у меня ни чего не получалось на ноуте.
А на компе все прекрасно работает. Ни чё не понимаю,все тож самое делаю:boredom: |
Вот оно, началось :). Стоит только выйти "релизу" - сразу куча багов :D.
Каюсь, Wolsh меня так "разогрел", что бросился сломя голову шлепать версии как будто в первый раз. Ок. Работка предстоит серьезная. Давайте по порядку. 1. Отображение/обработка ошибок. МессаджБокс - в урну. Не по нашенски это, не по флешерски. Однако, заменой ему может быть только вариант отдачи ошибки (пусть и не обязательно "кривой путь") обратно в прожектор . Технически это не очень заморочно. Код в прожекторе изменится минимально - добавится метод у локалконнекшн и все. Типа: Код:
client.error = function(error_message){...}- налаживать идентификацию прожекторов, чтобы ОДИН экземпляр запускашки не слал мессаги наугад. Видимо, следует слать запускашке некий "ини-запрос", ответом на который будет id-инфа для клиента. Либо снабжать этой инфой каждый запрос изначально. Своего рода протокол нужен, вобщем. - делать под каждый прожектор свой экземпляр запускашки и конфигурять ее через ини-файл. Тогда только два (или несколько) идентичных прожектора смогут работать с одной и той же запускашкой и, возможно, некорректно получать сообщения от запускашки. Этот вариант более простой. Но появляется лишний файл - файл настроек. И для разработчиков лишняя морока. Да проблема вцелом не снимается, сужается только. Проблема в том, что такова особенность локал коннекшн: для обмена мессагами используется общий, так сказать, котел, читай область памяти с фиксированным адресом. Все месаги варятся там, пока не будут прочитаны (прочитанное сообщение не затирается как таковое, просто сбрасываются в ноль битовые поля, хранящие его размер), либо затерты вновь отосланным сообщением. Выцепить адресованное тебе сообщение из этого котла можно только по заголовку - пара имя коннекта/имя метода. И то - если успеешь. Сообщения не складываются "стопкой", которую можно последовательно неспеша разбирать. Скорее наоборот - жаждущие прочитать/отправить сообщение выстраиваются в очередь. И не факт, что корректно будут писаться/читаться сообщения при множестве клиентов. Впрочем, можно попробовать, но теоретически - не факт. Я все-таки думаю, если непрограммно, ручками, по нажатию кнопок-ссылок юзером каждый прожектор будет слать сообщения - то проблем может и не возникнет и без какой-либо идентификации. Невозможно представить, чтобы юзер метался от прожектора к прожектору и тыкал кнопки :). Ну то есть пока он доберется до кнопки в другом прожекторе, запускашка сто раз успеет прочитать последнее сообщение и двести раз отправить ответ на него. Но вот то что ответ это будет прочитан именно отправителем последнего сообщения - опять же не факт. Если программно слать, в цикле там или еще как - то вообще.. фиг его знает, хотя зачем пулять сообщения очередями в рамках презентации? Верно? Ну, вобщем небезнадежно . Вкратце примерно так. Какие будут варианты решения проблемы "нескольких прожекторов"? Очень интересно услышать ваши соображения. Не стесняйтесь :). Может быть эта проблема не особо актуальна? Хотя... проблема есть, полюбому ее как-то придется сгладить. Ну и остается вариант с МессаджБоксом-таки. Или с его разновидностью (запуск error.exe). Это уже не имеет к локалконнекшн отношения, ибо "обратки" в этом случае нет и все будет работать примерно так, как сейчас, если, конечно, проработать вопрос с правильным показом этого самого МесаджБокса.. Если не гуд только то что не поверх прожетора он вываливается - решить можно. 2. Проблема с ноутом scarbo. Обобщая - проблема переносимости. Тут треба подсобрать инфу. Но сразу скажу, что я программировал только под винду до XP Pro SP3 включительно. Оговорюсь, что в коде запускашки нет ничего "такого". Но тем не менее. Кстати, а не виста-ли у вас на ноуте, scarbo? Пожалуйста, дайте больше инфы о том как юзаются флэш-презентации, в каких режимах, как бы вы хотели чтобы было и т.д., вобщем, если вам действительно интересна эта попытка решить проблему запуска из под флэша разных сторонних программ - пишите. Все предусмотреть невозможно, конечно, видимо, стоит определить какие-то разумные требования. Лично я склоняюсь к варианту с МессаджБоксом. Ибо толком обработать ошибку прожектор все равно не сможет без дополнительных надстроек, а слать ему еррор только чтоб его потом показать - овчинка выделки, как говорится.. Ну чтобы не быть голословным, берусь предстваить оба варианта: с МессаджБоксом поверх и с "обраткой" без идентификации. Там посмотрим. Да, и про содержание МессаджБокса. Я так понял, даже если в исходнике прописан относительный путь к запускаемому файлу, в боксе треба отображать его проебразованным в абсолютный? |
если запускаются два прожектора использующие одину общую запускашку, то никаких броблем нету.
Проблема появляется, если вдруг кое-кто свистнет и пользователь запустит одновременно два (более?) !разных! прожектора, использующих разные запускашки и запускаемые файлы. То есть если я смотрю презентация с диска, то в фоне висит его запускашка. И при попытке запустить фаил с другой презентации, которая у меня на рабочем столе поиск запускаемого файла будет осуществлён относительно дисковой запускашки (как я понял они так устроены) три условия: одновременный просмотр двух !разных! прожекторов из !разных! директорий они оба должны использовать мега-метод "Запускашка" пути к файлам должны быть относительные первые два могут слачатся только у любопытных (причём у разработчиков) :) вариант с персональной запускашкой и ini файлом (например если вписывать туду идентификатор соединения) Его флеш читает, создаёт соединение, запускается запускашка, читает фаил, слушает нужное соединение. два камня: 1. все будут идентификатор оставлять дефолтный :) 2. нужно написать удобный интерфейс для юзания из флеша вариант, когда под !каждый запрос! запускается своя запускашка и после запуска нужного файла запускашка отрубается. один камень: удобный интерфес во флеше А месаджБокса... повер флеша его, раз говорите не вопрос, и готово :) |
О, много)))
Ну я, признаться, не понимаю, что за несколько прожекторов, зачем... Если такая ситуация и будет возникать в каком-то проекте, это всеже очень единичные случаи. Я даже представить сходу не могу такой проект, заливающий таскбар кнопками. По-моему это неактуально. Но если ктото поделится идеей такого проекта из двух и более прожекторов, одновременно запускающих файлы, прочту с большим интересом)))) По поводу бокса. Я бы сам пожалуй лучше во флэше ошибку обрабатывал, но зная уровень программирования дизайнеров (а они чаще всего и делают презентации, все на таймлайне или вообще скринами) немного за них побаиваюсь. Кроме того, их еще надо суметь убедить, что ошибка возможна))))))) Делать "лишние", на всякий случай, окна - в реальности мало кто будет. Так что в идеале было бы здорово сделать эту фичу опциональной. В идеале, вообще говоря, хорошо бы настройки всякие иметь, коль уж пошла такая послабуха, что можно всякие параметры передавать, а не тупо запускать ехе. Что бы хотелось навскидку? Задавать текст сообщения об ошибке - это позволит, в частности, использовать разные языки и разные литературные стили по желанию автора презентации (не смейтесь, не только же годовые отчеты нефтекомбината бывают, ктото и на албанском загнуть захочет). Потом - выбор способа обработки ошибки - во флэше или боксом. Чтобы бедный дизайнер мог поставить параметр в "auto" и не греть голову, а лучше чтоб вообще ему ничего не ставить, и по-умолчанию открывать бокс, но дать желающим такую настройку, чтоб бокс не открывать, а получать в прожектор сообщение об ошибке и обрабатывать его по своему усмотрению (очень симпатичный синтаксис ты привел!)) Заголовок окна бокса, наверно, трудно сделать настраиваемым? Если трудно, пусть будет просто всем понятный Error))) Насчет овчинки не соглашусь. Во флэше можно сделать сообщение "в стиль", не нарушая видеоряда презентации прыгающими окнами и чужеродным вин-интерфейсом. Человек нажимает красивую кнопочку в презентации, и - оппа - получает такое же красивое предложение листать потихоньку дальше))) а не удар молотком по пальцам. Путь к ненайденному файлу - да, хорошо бы конечно полный, если это возможно. Собственно, никогда не видел в подобных боксах относительных путей)) Спасибо за заботу о нас, медиасиротах))) |
Ок. Поработаю. Wolsh, Mnilionic - спасибо за отклик.
Предлагаю двигаться от простого - пусть будет все-таки вариант с одним прожектором, множественность пока оставим в стороне. Честно, очень не хочется огород городить))). Лучше потратиться на предложенную Wolsh'ем опциональность. Ну если придется - что ж.. Mnilionic разумно указал на возможные камни. Короче, загрузили вы меня достаточно )). Посмотрим, что выйдет. UDP: вышло вот что. |
как раз на ноуте у меня XP,а вот на компе Vista
|
| Часовой пояс GMT +4, время: 20:41. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.