Здравствуйте
У меня возникла задача вставлять SWF на CS3 в флекс-приложение, вызывать функции SWF.
Написал простейший макет.
SWF часть:
Файл Game.as

Код AS3:
package {
import flash.display.MovieClip;
public class Game extends MovieClip implements IGame {
public function hello():String {
return "Hello, world!";
}
}
}
Файл IGame.as

Код AS3:
package {
interface IGame{
function hello():String;
}
}
Флекс часть:
Загрузка SWF:

Код AS3:
private function loadSWF():void{
loader = new Loader();
var req:URLRequest = new URLRequest("http://localhost/swf/GameFrame/bin-debug/Game.swf");
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadSWFComplete);
loader.load(req);
}
И обработчик успешной загрузки:
Вот так работает:

Код AS3:
private function loadSWFComplete( event:Event ):void{
var info:LoaderInfo = event.target as LoaderInfo;
var str:String = info.content['hello']();
Alert.show(str);
}
А через интерфейс почему-то нет:

Код AS3:
private function loadSWFComplete( event:Event ):void{
var info:LoaderInfo = event.target as LoaderInfo;
var loadable:IGame = info.content as IGame;
if(loadable){
var str:String = loadable.hello();
Alert.show(str);
}
}
Перелопатил уже пол-интернета, но решения так и не нашел. Почему же оно через интерфейс все-таки не работает?