Я общаюсь из флэш-приложения с помощью команды, подобной следующей: ExternalInterface.call ("hello", "world")
Это обрабатывается на стороне C # чем-то вроде:
string swfPath = Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + "test.swf";
this.axFlash.LoadMovie(1, swfPath);
this.axFlash.FlashCall += new AxShockwaveFlashObjects._IShockwaveFlashEvents_FlashCallEventHandler(axFlash_FlashCall);
И четная функция объявлена как
void axFlash_FlashCall(object sender, AxShockwaveFlashObjects._IShockwaveFlashEvents_FlashCallEvent e)
{
}
. AxFlash_FlashCal вызывается нормально, если на экране есть текстовое поле, в котором установлено использование текста TLF.(подойдет любое текстовое поле, без конкретного идентификатора).Без текстового поля даже не сработает.(Даже если для ExternalInterface.Avaliable задано значение true)
Я пытался использовать CS4 и CS5 для публикации, используя в качестве выходных данных Flash 10 и 9.Ничто из этого не имеет значения.
Я использую AS3 и .NET 4.0.Кто-нибудь сталкивался с этим раньше или знает, зачем нужен текст TLF, чтобы это работало?