Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.12.2009, 03:12
Limeflash вне форума Посмотреть профиль Отправить личное сообщение для Limeflash Найти все сообщения от Limeflash
  № 1  
Ответить с цитированием
Limeflash

Регистрация: Dec 2009
Сообщений: 20
По умолчанию Loader и внешний SWF

Задача на первый взгляд проста - создать прелоадер, который загружал бы произвольную флешку, в конкретном случае - простой видеоплеер.

Код в целом прост:

Код AS3:
var context:LoaderContext = new LoaderContext();
context.checkPolicyFile = true;
var ldr:Loader= new Loader();
ldr.load( new URLRequest( "путь до swf-файла" ), context );
Обычные картинки, простые флешки, например баннеры, созданные в AS2, грузятся и работают прекрасно. Но как только доходит до загрузки AS3-флешки, дебаг-плеер начинает сыпать ошибками, что мол "Error #1009: Не удается вызвать свойство или метод со ссылкой на объект 'null'"

В чем грабля?

Старый 09.12.2009, 03:13
bicubic_bublic вне форума Посмотреть профиль Найти все сообщения от bicubic_bublic
  № 2  
Ответить с цитированием
bicubic_bublic
Banned
[+4 25.09.09]
[+1 12.11.09]
[+4 12.12.09]

Регистрация: Sep 2009
Сообщений: 231
Цитата:
В чем грабля?
код загружаемыой флешки с ошибкой написан..

Старый 09.12.2009, 03:17
Limeflash вне форума Посмотреть профиль Отправить личное сообщение для Limeflash Найти все сообщения от Limeflash
  № 3  
Ответить с цитированием
Limeflash

Регистрация: Dec 2009
Сообщений: 20
Цитата:
Сообщение от bicubic_bublic
код загружаемыой флешки с ошибкой написан..
Скорее нет, чем да, ведь сама по себе (отдельно от загрузчика) загружаемая флешка работает прекрасно.

Старый 09.12.2009, 03:36
bicubic_bublic вне форума Посмотреть профиль Найти все сообщения от bicubic_bublic
  № 4  
Ответить с цитированием
bicubic_bublic
Banned
[+4 25.09.09]
[+1 12.11.09]
[+4 12.12.09]

Регистрация: Sep 2009
Сообщений: 231
Цитата:
Скорее нет, чем да, ведь сама по себе (отдельно от загрузчика) загружаемая флешка работает прекрасно.
это ни о чем не говорит.
для начала проверьте ссылки на stage при инициализации загружаемой флешки. в конструкторе их быть не должно.

Старый 09.12.2009, 03:39
Limeflash вне форума Посмотреть профиль Отправить личное сообщение для Limeflash Найти все сообщения от Limeflash
  № 5  
Ответить с цитированием
Limeflash

Регистрация: Dec 2009
Сообщений: 20
Цитата:
Сообщение от bicubic_bublic
я флешка работает прекрасно.
это ни о чем не говорит.
для начала проверьте ссылки на stage при инициализации загружаемой флешки. в конструкторе их быть не должно.[/quote]

Ссылки, пожалуй есть, и скорее всего будут, ведь флешка произвольная, и каждый раз может быть разной, я на нее влиять не могу.
Если дело связано как-то с безопасностью - могу уточнить, что обе флешки находятся на одном и том же сервере, и есть всеразрешающий crossdomain.xml

Старый 09.12.2009, 03:41
bicubic_bublic вне форума Посмотреть профиль Найти все сообщения от bicubic_bublic
  № 6  
Ответить с цитированием
bicubic_bublic
Banned
[+4 25.09.09]
[+1 12.11.09]
[+4 12.12.09]

Регистрация: Sep 2009
Сообщений: 231
тогда попробуйте загружать таким образом:
Код AS3:
var loader:Loader= new Loader();
addChild(loader);
loader.load( new URLRequest( "путь до swf-файла" ), context );

Старый 09.12.2009, 03:45
Limeflash вне форума Посмотреть профиль Отправить личное сообщение для Limeflash Найти все сообщения от Limeflash
  № 7  
Ответить с цитированием
Limeflash

Регистрация: Dec 2009
Сообщений: 20
Цитата:
Сообщение от bicubic_bublic
тогда попробуйте загружать таким образом:
Код AS3:
var loader:Loader= new Loader();
addChild(loader);
loader.load( new URLRequest( "путь до swf-файла" ), context );

Пробовал так, пробовал this.stage.addChild(ldr), пробовал вообще убрать addChild, ошибка все равно возникает точно такая же во всех случаях.

Старый 09.12.2009, 03:50
bicubic_bublic вне форума Посмотреть профиль Найти все сообщения от bicubic_bublic
  № 8  
Ответить с цитированием
bicubic_bublic
Banned
[+4 25.09.09]
[+1 12.11.09]
[+4 12.12.09]

Регистрация: Sep 2009
Сообщений: 231
ну можно попробовать декомпилировать проблемные флешки и выяснить в чем проблема..

возможно где-то есть обращение к root которое считается внутреннее а получается не очень..

Старый 09.12.2009, 04:00
Limeflash вне форума Посмотреть профиль Отправить личное сообщение для Limeflash Найти все сообщения от Limeflash
  № 9  
Ответить с цитированием
Limeflash

Регистрация: Dec 2009
Сообщений: 20
Цитата:
Сообщение от bicubic_bublic
ну можно попробовать декомпилировать проблемные флешки и выяснить в чем проблема..

возможно где-то есть обращение к root которое считается внутреннее а получается не очень..
Декомпилировать можно, и скорее всего они есть, эти обращения, ведь изначально флешки не писались под использование в прелоадере, а теперь их надо использовать в прелоадере.

Старый 09.12.2009, 04:04
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 10  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Пока не будет глобального обработчика ошибок - ничего вы с этим не сможете сделать... исправить чужую криворукость в уже скомпилированом коде - это Левшой надо быть...
__________________
Hell is the possibility of sanity

Создать новую тему Ответ Часовой пояс GMT +4, время: 13:54.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:54.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.