WinCE设备上用socket连接电脑出有关问题-现有连接被远程主机强行关闭

WinCE设备上用socket连接电脑出问题----现有连接被远程主机强行关闭
在桌面上运行一点问题也没有,但同样的代码在手持机设备上,就不能用了,总是出现 “现有连接被远程主机强行关闭”的提示,在try-catch中也不能捕捉到异常,但实现上Socket可能是没连上的。
代码如下:
C# code

namespace SmartDeviceProject1
{
    public partial class Form1 : Form
    {
        private static byte[] result = new byte[2048];
        IPAddress ip;
        Socket socket;
        Thread myThread;

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ip = IPAddress.Parse(this.comboBox1.Text);
            socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            try
            {
                socket.Connect(new IPEndPoint(ip, int.Parse(this.textBox1.Text)));
                myThread = new Thread(new ThreadStart(ReceiveData));
                myThread.Priority = ThreadPriority.BelowNormal;
                myThread.Start();            
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

        }

        private void button2_Click(object sender, EventArgs e)
        {
            if (socket.Connected)
            {
                socket.Send(Encoding.UTF8.GetBytes(textBox2.Text));
                textBox2.Text =string.Empty ;
            }
        }


        private void ReceiveData()
        {
            while (true)
            {

                int resultLength = socket.Receive(result);
                this.Invoke((EventHandler)delegate
                {
                    this.textBox3.Text +=(DateTime.Now.ToLongTimeString()
                        + Encoding.UTF8.GetString(result, 0, resultLength));
                });

                Application.DoEvents();
            }
        }

    }
}



上面我之所以说在手持设备上Socket可能是没连上的,是因为如果我桌面端没有打开端口,try - catch 同桌面打开端口一样,都不能捕捉到异常,而如果上面的客户端程序如果与服务器端都运行在桌面,则try catch 能捕捉到没连上,出现“由于目标机器积极拒绝,无法连接。 192.168.0.170:10086”的异常信息。

问:如果我想在手持机上用Socket连上桌面,我应该怎么做呢 ?这上面的代码跟本好像连上不,请高手指点



------解决方案--------------------
是不是wince下用socket要动态加载相关dll?

用c来写,不用.net,就是要动态加载。
------解决方案--------------------
唉!
你真机是不是通过activesync同步后再连接的?
同步后真机将由activesync分配一个ip,此ip与你桌面电脑或远程服务端不是同一个子网!

------解决方案--------------------
WinCE上有Wi-Fi吗?试试通过Wi-Fi上网吧
通过ActiveSync连好象是TCP可以UDP不行
------解决方案--------------------
代码,是需要移植的,不是拿来就能用的。