Flash中声明了几个变量:
private var objeTemp:Object = {};
private var comPSysid:String;
private var compFlag:String;
Flash中为变量赋值:
comPSysid = String(sysid2);Flash和C#winform交互:
ExternalInterface.call('asTojs',objeTemp,comPSysid,compFlag);C#winform接收:
MessageBox.Show(e.request.ToString());结果弹出:
<invoke name=\"asTojs\" returntype=\"xml\"><arguments><undfined/><null/><null/></arguments></invoke>但是在web中我用JS接收的时候那些值都是有的只是为什么呢?求解
跪谢...

解决方案 »

  1.   

    private void Form1_Load(object sender, EventArgs e)
    {
        flash.Movie = "E:/c2flash.swf";
        //回调事件
        flash.FlashCall += new AxShockwaveFlashObjects._IShockwaveFlashEvents_FlashCallEventHandler(flash_FlashCall);
    }void flash_FlashCall(object sender, AxShockwaveFlashObjects._IShockwaveFlashEvents_FlashCallEvent e)
    {
        string s = nodeXml(e.request.ToString())[0].ChildNodes[0].InnerText.ToString();
        MessageBox.Show(s);
    }private XmlNodeList nodeXml(string s)
    {
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(s);
        XmlNodeList list = doc.GetElementsByTagName("arguments");
        return list;
    }