2013-02-14 2 views
0

Я внедрил этот код (Can ActionScript tell when a SWF was published?) в свой основной файл swf в моем проекте. Он отлично работает. Однако я загружаю много модулей в свое приложение. Эти модули собираются при необходимости для внесения изменений. Я хотел бы получить дату компиляции для модуля, который в настоящее время загружен.Дата компиляции swf-модуля

В основном у меня есть одно основное приложение «Flex». Затем оно загружает и выгружает различные модули (отдельные файлы swf) по мере необходимости на основе пользовательских вариантов. Мне нужно иметь возможность установить контроль над каждым из этих модулей, который получит дату, с которой был скомпилирован определенный SWF-файл.

Есть ли способ передать текущий swf-файл функции, чтобы получить дату компиляции этого swf?

Пол

ответ

0

Да, используйте Loader.contentLoaderInfo.bytes собственность, Loader объект является тот, который вы использовали для загрузки SWF-файла.

Вы можете изменить функцию, чтобы принять байт SWF-файла в качестве параметра:

getCompilationDate(bytes:Array):void{ 
    ... 
} 

getCompilationDate(stage.loaderInfo.bytes) 
getCompilationDate(moduleLoader.contentLoaderInfo.bytes) 
+0

Так что, если я нахожусь в загруженном модуле, как я ссылаться на ModuleLoader для загруженного модуля? –

+0

Изнутри модуля, я считаю, вы можете использовать 'stage.loaderInfo'. –

+0

Исходя из вашего предложения, я переместил getCompilationDate() в тестовый модуль и вызвал его с помощью кнопки. Он возвращает последнее время компиляции файла SWF-файла parentApplication, а не swf-файл, загруженный модулем. –

Смежные вопросы