首页 > flex > Flex与XMLSocket与net交互

Flex与XMLSocket与net交互

参考网上的自己修改下 运行环境vs2008 +flex 3
建一控制台程序
using System;
using System.Net.Sockets;
using System.IO;
using System.Net;
namespace FlexSocket
{
    class Program
    {
        static void Main(string[] args)<!–more–>
        {
            TcpListener listener=null;
            try
            {
               
                Int32 port=8888;
                IPAddress localAddr=IPAddress.Parse("127.0.0.1");
                listener=new TcpListener(localAddr,port);
                //listener = new TcpListener(8888);//不能直接用此定义结果0.0.0.0:8888 ,环境vs2008其他为测试过
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return;
            }
            listener.Start();
            Console.WriteLine("服务器启动,等待客户端连接.");
            bool loop = true;
            while (loop)
            {
                Socket s = listener.AcceptSocket();
                NetworkStream ns = new NetworkStream(s);
                StreamReader reader = new StreamReader(ns);
                string result = string.Empty;
                try
                {
                    result = reader.ReadLine();
                    Console.WriteLine(result);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }

        }
    }
}
客户端flex
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"  backgroundGradientAlphas="[1.0, 1.0]"
    backgroundGradientColors="[#CDCAE6, #FFFFFF]">
  <mx:Script>
      <![CDATA[
        import mx.controls.Alert;
     
        //import flash.net.Socket;
        // private var xmlConn:Socket;
          import flash.net.XMLSocket;
              private var xmlConn:XMLSocket;
           
            private function connectionServer():void
            {
            //xmlConn=new Socket();
                xmlConn =new XMLSocket(); //  new XMLSocket();
                xmlConn.connect("127.0.0.1",8888);
                xmlConn.addEventListener(Event.CONNECT,funConnect);
                //监听是否连接上服务器
                xmlConn.addEventListener(Event.CLOSE,funClose);
                //监听服务器是否关闭
            }
         
            private function onSend():void
            {
              xmlConn.send(txtData.text + "\n");//如果sock无此连接
             
            }
            private function funConnect(event:Event):void{
            txtData.text+="已经成功连接到服务器!\n";
            }
          private function funClose(event:Event):void{
            txtData.text+="和服务器断开!\n"
            }
      ]]>
    </mx:Script>
    <mx:TextArea x="43" y="34" height="120" width="263" id="txtData"/>
    <mx:Button x="93" y="180" label="连 接" f click="connectionServer()"/>
    <mx:Button x="190" y="180" label="发 送" f click="onSend()"/>
</mx:Application>

原创文章转载请注明出处:云飞扬IT的blog

本文链接: http://www.ajaxcn.net/archives/44

分类: flex 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.