![]() |
Ограничения Flash Player
собственно вопрос вот в чем. есть довольно большой проект на флеш (порядка 6 тыс. строк кода). Собирается в CS3. используется AS 2.0
Параметры публикации: Flash Player 8, компрессия, экспорт скрытых слоев, макс качество изображений, макс качество звука. собственно проблема: при запуске по Ctrl+Enter из ЦС3 все работает замечательно, при сборке в exe файл встает намертво на третьем кадре (в нем ничего не менял) Проблема появилась, при добавлении новой переменной. Когда я в коде кадра добавляю переменную, встает намертво. Появилось подозрение, что в плеере есть ограничение на скажем кол-во глобальных переменных или скажем кол-во строк кода, ну или может я вообще не о том думаю ))) подскажите, в какую сторону копать, и если есть ограничения плеера, то какие? зы: имя переменной роли не играет... проверено |
Скорее всего fla-файл записался с глюком.
Как вариант можно swf самим ФП перевести в exe. |
вариант, но факт в том, что пишется с глюком когда я добавляю код (железно безвредный и синтаксически верный), а когда убираю, собирается нормально. значит дело все-таки в коде наверное. я знаю есть ограничения на глубину рекурсии и время выполнения, может еще какие есть
|
У меня был случай, когда добавления в код пары слешей (для комментариев) убивало компилятор.
Потом нашел в библиотеке глюкнувший мувик, удалил его и все заработало. |
вроде получилось... только у меня там настройки fullscreen и прочее... надо щас костыль поставить чтобы можно было собирать экзешник а он на этапе выполнения определял, уже можно работать в полноэкранном режиме, или дать себя собрать )))
если смогу собрать рабочую версию плеером а не компилятором, сообщу Добавлено через 42 минуты действительно заработало. остается только удивляться почему цс3 правильно собирает свф файл, но при этом не может собрать ехе файл, а плеер может. я бы мог написать много теплых и ласковых слов в адрес адоба, но не буду, а то еще забаните ))) спасибо за помощь |
еще небольшой вопрос. а это как-нибудь лечится? просто проект не стоит на месте, код все добавляется и добавляется, а процесс получения релиза заметно усложнился. можно как-то заставить флеш снова вернуться в колею и нормально компилить приложение. а то это уже шаманство какое-то получается
Добавлено через 3 минуты и если это лечится, как найти место где все не так и не то http://www.kolobok.us/smiles/madhouse/dash2.gif Добавлено через 4 минуты и если это лечится, как найти место где все не так и не то http://www.kolobok.us/smiles/madhouse/dash2.gif |
от у меня тоже похожий баг и не лечицо.
Фо флэшке всего 3 кадра. В первом задаются переменные. Во втором кнопочки для перехода в третий кадр. В третем скриптег неслабый(172 строки всего) в нём аттачатся мувики из библиотеки и они крутятся вокруг центра + эффект блюра. Компилирую в SWF и всё работает как часы Швецарские, и через Эксплорер, а когда компилирую в ЕХЕ сразу или через плеер, то виден только фон и больше ничего. Какие могут быть тут ошибки и причины глюка? Не понятно. Может есть человек, который знает причины подобных ошибок? Где ты? Отзовись. :) |
ситуация повторилась, только теперь уже не лечится сборкой самим плеером...
что делать не знаю, если есть ещё варианты буду рад услышать |
Обратиться в службу поддержки Adobe.
|
вариант, только я даже и не знаю как им объяснить это все... у них русскоязычная поддержка имеется?
|
|
Об ограничениях:
Во flash cs3 существует ограничение на количество строк (или, может быть, операторов) в теле одной функции. Я столкнулся с этой проблемой тогда, когда решил формировать тело функции автоматически (в основном - там было замудрённое добавление объектов со сложновычисляемыми параметрами). Для своей цели я написал на Delphi программу, которая выполняла нужные вычисления и формировала текст, который я потом вставлял в тело функции. И вот где-то на 120-м элементе - флеш сглючило. Иногда он компилировался - иногда нет. Но в любом случае он не мог выполнить эту функцию - вис намертво. Решил проблему разбиением текста на несколько функций с количеством элементов <= 50 в каждой. |
Цитата:
Добавлено через 17 минут результаты эксперимента реально впечатляют... комментируем переменные и кусок кода - работает, комментируем только код или только переменные - не работает... Добавлено через 18 минут между этими переменными и куском кода никакой зависимости... переменные были там с кучерявых времен, кусок кода - тот который после того как его добавили перестал компилировать проект. в куске кода ошибок нет :( Добавлено через 13 часов 44 минуты var isPlayBanner:Boolean = false; var bannerList:Array = new Array (); var asdfjkllkjfdsaaklsdjfasjkldfaskljdf:Number = 0; var asdfjkllkjfdsaaklsdjfasjkldfaskljdfasdfasdf:Number = 0; добавляю в кадр еще 2 переменные, первая - все пучком, вторая - не компилируется. имя второй переменной может быть абсолютно любым... короче ограничение есть, но какое не понятно. буду пробовать разбивать как-то код на клипы... макароны получатся из кода, но что еще попробовать не знаю... если получится с разбивкой по клипам - это имхо ограничения на код временной шкалы, если не получится, попробую разбить по кадрам, значит это ограничение на код кадра. если не сработает ни то ни то... значит это ограничение файла и я курю бамбук, в поисках вариантов рефакторинга кода... Добавлено через 18 часов 53 минуты камрады... короче проблему я решил. глюк был при добавлении кода (практически любого) в один из клипов. я удалил этот клип, предварительно сохранив в текстовом файле его код, создал заново с нуля, закинул код, закинул клип на все кадры основной шкалы где он присутствовал. то есть только полное пересоздание символа клипа решило проблему. вывод - похоже что такие глюки идут преимущественно из библиотечных клипов, только какой из них сбоит, найти очень и очень сложно. мне можно сказать повезло |
3Desian Посмотрите версию плеера в формате swf и в формате exe
Дело в том, что если Вы запустите swf тогда флешПлейер запустится тот который установлен по умолчанию (судя по всему установленный IDE FLASH CS3), а когда Вы запускаете exe тогда проигрывается флешка в плейере встроенном тое-есть это может быть версия от 8-ки или от CS3-ки. Капайте сюда... может поможет. |
Ну... Это не объясняет почему я решил проблему просто пересоздав один в один клип с кодом. При этом реально изменений никаких в приложении не было. Скорее всего глюк. Так скажем в Дельфи можно создать обработчик для множества кнопок, сделать одну, Раскопировать на много кнопок, привязать к этому обработчику и... будет работать на половине кнопок или нет это как фишка ляжет :) Бывает что всё работает, бывает что при проверке кнопка не реагирует. Наверное мой случай также относится к багам среды разработки. Иначе как еще объяснить то, что флешка вылечилась удалением и созданием клипа по всем параметрам абсолютно одинакового с одинаковым кодом (вплоть до пробелов)
|
| Часовой пояс GMT +4, время: 18:45. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.