请教一个问题,那就是我现在做的项目(监控系统)是服务器方面用C++写的来采集数据,而客户端是用asp.net(C#)做的网站,我怎么才能建立客户端与服务器端的通信啊?socket可以吗?给点思路啊....
请大侠们指教....
如果有相关的资料也可以发.cn)里啊也可以加我的QQ(346470752),给我指点一下就好啊!!!

解决方案 »

  1.   

    asp.net 网页加载 activx控件 activx中使用atl服务 完成通讯
      

  2.   

    讲数据保存在xml或者其他文件里面一个读一个写 
      

  3.   

    可是我两边都写socket就是无法建立连接啊
    我怎么怎么办??是我写的有错吗?
      

  4.   


    C# Socket 客户端的例子 客户端代码;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;using System.Net;
    using System.Net.Sockets;
    using System.Threading;namespace ChatToolClient
    {
        public partial class Form1 : Form
        {
            Socket clientSocket = null;//客户端套接字
            public Form1()
            {
                InitializeComponent();
            }        private void Form1_Load(object sender, EventArgs e)
            {
                try
                {
                    //建立与服务器连接的套接字
                    IPAddress ip = IPAddress.Parse("172.16.94.134");
                    IPEndPoint iep = new IPEndPoint(ip, 82);
                    clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                    clientSocket.Connect(iep);
                    textBox2.Text = "连接成功" + "\r\n";
                    
                }
                catch (Exception exp)
                {
                    MessageBox.Show(exp.Message);
                }
            }        private void send_Click(object sender, EventArgs e)
            {            if (textBox1.Text != "")
                {
                    try
                    {
                        //发送数据
                        string message = textBox1.Text;
                        byte[] sendbytes = System.Text.Encoding.UTF8.GetBytes(message);
                        int successSendBtyes = clientSocket.Send(sendbytes, sendbytes.Length, SocketFlags.None);
                    }
                    catch (Exception exp)
                    {
                        MessageBox.Show(exp.Message);
                    }
                    //将发送的数据显示到对话窗口并使对话窗口的滚动条一直停留在最下方
                    this.textBox2.Text += "我自己:"+"\r\n"+textBox1.Text + "\r\n";//发完一条消自己息就换行显示
                    this.textBox2.SelectionStart = this.textBox2.Text.Length;
                    this.textBox2.ScrollToCaret();
                    this.textBox1.Text = "";//将发送窗口清空
                }
                else
                {
                    MessageBox.Show("发送内容不能为空");
                }
            }        private void timer1_Tick(object sender, EventArgs e)
            {
                byte[] receiveBytes = new byte[1024];
                if (clientSocket.Poll(100, SelectMode.SelectRead))
                {
                    int successReceiveBytes = clientSocket.Receive(receiveBytes);
                    this.textBox2.Text +="服务器:"+"\r\n"+
                                System.Text.Encoding.UTF8.GetString(receiveBytes, 0, successReceiveBytes) + "\r\n";
                    this.textBox2.SelectionStart = this.textBox2.Text.Length;//使对话窗口的滚动条一直停留在最下方
                    this.textBox2.ScrollToCaret(); 
                }      
            }
        }
    }C++的服务端 看你用什么开发工具 自己去写吧
      

  5.   

    C# Socket 客户端的例子
    我已经连接上了.哈哈,太高兴了.原来是我的C++那边的服务器多线程代码有问题,我改了一下可以了..真是太谢谢了...