При загрузке одного swf в другой (лоадер+апликэйшн домейн) его класс не определяется как класс на этапе компиляции. (Type was not found or was not a compile-time constant: Slut)
Код:
...
ldr = new Loader();
var req:URLRequest = new URLRequest("../bin/Slut.swf");
var appDomainB:ApplicationDomain = ApplicationDomain.currentDomain;
var ldrContext:LoaderContext = new LoaderContext(false, appDomainB);
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
ldr.load(req, ldrContext);
}
private function completeHandler(event:Event):void
{
var Sluts:Class = event.target.applicationDomain.getDefinition("Slut") as Class;
var mySlut:Sluts = Sluts(event.target.content);
IDE:FD,
use network services: false,
фактически это пример использования метода из загруженного swf из документации adobe...
Вопрос: что не так с настройками FlashDevelop? Или нужно что-то прописать в Slut?
дополнение: остальные примеры с applicationDomain из документации также не работают (по другому - другие ошибки, но принцип тот же - не видит Slut как класс).
Добавлено через 30 часов 56 минут
итерационным методом был получен следующий результат:
Код:
var mySlut:*= new Sluts();
тогда методы из загруженной swf Slut работают.
кроме того, в заголовке класса Slut установлено:
Код:
/**
* @mxmlc accessible=true
*
*/
, но это, наверное, ни при чём, как и use network service.