PDA

Просмотр полной версии : Error #2046


RigiyTip
29.11.2011, 03:00
Компилируется и открывается нормально. Но вот если обновить страничку 18 раз. Вылетает ошибка:
Error #2046: В загруженном файле отсутствует допустимая сигнатура.

У некоторых людей она вылетает сразу. У некоторых вообще всё нормально.

ПС 18 раз это на линуксе. Компилировал в консоли, тоже на линуксе ) Flex SDK 4.5.1

Поиск по форуму нчего не дал, гугл говорит кое где что проблемы с swz, но как их решить чтот не пойму.

Добавлено через 2 часа 29 минут
ХМ!
Ошибка пропадает, если компилировать с переменной -static-link-runtime-shared-libraries
Т.е. статически линковать все библиотеки. Иначе выходит ошибка. Не понятно почему ....

alatar
29.11.2011, 13:20
Ошибка пропадает, если компилировать с переменной -static-link-runtime-shared-libraries
Это и есть ответ на ваш вопрос "почему". Ошибка в загрузке RSL.

RigiyTip
29.11.2011, 23:06
Просто интересно получается. Именно после 18 обновлений - ошибка.
Потом браузер перезапускаешь, нормально, но опять 18 раз и снова ошибка.

Если статически линковать RSL, то приложение очень большое получается.
Ведь бывает что у пользователя RSL уже в кэше и загрузка очень быстрая. А так... ну очень долго грузится ((

Как бы избавится от ошибок загрузки RSL?

Пробовал добавлять необходимые RSL в каталог с SWF. Не помогает.

alatar
29.11.2011, 23:40
Все необходимые данные есть только у вас. Проанализируйте ситуацию, в какой версии плеера это происходит, какая именно RSL глючит, в какой операционке. Проверьте в джире плеера, возможно это баг и он известен.

RigiyTip
30.11.2011, 09:04
Ну вобщем мне удалось выяснить вот что...

Пользователь, у которого не работало использовал старый плеер 10.0.41 - обовление его не спасло, видимо у него вирусы какието или ещё чтот, всё это у него на WinXP и статическая линковка библиотек его тоже не спасает...

под Win7 - всё работает идеально.

под Linux Ubuntu 11.04 (Если быть точнее Linux Mint 10) после 17 обновлений страницы на 18 раз ошибка при динамической линковке, при статической - нормально.
Так же если скомпилировать в дебаг в FB 4.5* Flex SDK 4.5.1 то работает везде нормально, при релизе - ошибка.

Так же проблему нашёл вот здесь (http://stackoverflow.com/questions/2892439/flex-built-swfs-no-longer-work-error-2048-2046-2032) и здесь (http://stackoverflow.com/questions/6822456/reloading-flash-17-times-causes-error-2046-and-requires-a-browser-restart)

Они пока не решенные

По поводу Jira - то там такие ошибки периодически встречаются, но слегка с иными симптомами ))

А вот тут (https://bugs.adobe.com/jira/browse/SDK-31090) всё один в один, но проблема не решена. Видимо Адобы реально подзабивают на линукс...
пичалька...

Видимо остаётся только ждать.

Кстате, все эти действия проводил так же в Flex SDK 4.5.0. Результат тот же.

Думаю сделать чтоб на сервере хранились 2 вида swf. Один со статической линковкой, другой с динамической. И сервер определял ОС и выдавал линуксу статическую, винде - динамическую )) Думаю будет само оптимально.

alatar
30.11.2011, 13:15
То что вы нашли, не совсем то, ваш баг находится тут (https://bugbase.adobe.com/index.cfm?event=bug&id=2949403). Чинить его, судя по-всему, не будут из-за низкого приоритета, все-таки ситуация когда пользователь более десяти раз подряд перезагружает страницу встречается не часто.

Баг этот не является багом SDK, это баг кэша плеера (если речь идет о swz).