SuperSocket 入门,实现客户端和服务端消息互发

SuperSocket 入门,实现客户端和服务端消息互发源码地址 https download csdn net download weixin 运行出来效果如下 服务端 客户端 第一步 使用 SuperSocket 创建一个服务端 a 引入需要 dll 文件 由于 supersocket 使用到了 log4 所以在这儿也需要引用 log4net dll 添加项目引用即可 b 创建一个

源码地址:SuperSocket入门,实现客户端和服务端消息互发_supersocket客户端实现,supersocket客户端-C#代码类资源-CSDN下载

运行出来效果如下:

服务端:

客户端:

第一步,使用SuperSocket创建一个服务端

a.引入需要dll文件,由于supersocket使用到了log4,所以在这儿也需要引用log4net.dll

添加项目引用即可

b.创建一个server

在Program.cs中 设置程序运行的窗体,在窗体的load事件中启动socket服务。

code:

///

        /// 窗体初始化加载,启动socket服务
        ///

        ///         ///         private void Form1_Load(object sender, EventArgs e)
        {

            //配置
            ServerConfig serverConfig = new ServerConfig();
            serverConfig.Port = 8080;//端口号
            serverConfig.Mode = SocketMode.Tcp;//设置为tcp服务器

            //设置服务配置
            if (!appServer.Setup(serverConfig))
            {

                System.Windows.Forms.MessageBox.Show(“开启服务器失败”);
                return;
            }

            //启动服务
            if (!appServer.Start())
            {

                System.Windows.Forms.MessageBox.Show(“开启服务器失败”);
                return;
            }

            //注册监听事件

到此,就启动了一个简单的tcp socket 服务,接下来,启动一个客户端进行连接

code:

//客户端对象

AsyncTcpSession tcpClient = null;

///

        /// 连接服务器
        ///

        ///         ///         private void button1_Click(object sender, EventArgs e)
        {

            string ipAddress = this.ipTextBox.Text.ToString();
            string port = this.portTextBox.Text.ToString();
            tcpClient = new AsyncTcpSession(new IPEndPoint(IPAddress.Parse(ipAddress), int.Parse(port)));
            tcpClient.Connect();
            tcpClient.DataReceived += TcpClient_DataReceived;
            tcpClient.Error += TcpClient_Error;
            tcpClient.Closed += TcpClient_Closed;
        }

客户端连接成功,给服务器发送消息

if (tcpClient.IsConnected)

{

}

至此,就完成了服务器和客户端的简单搭建,刚入c#大法,也是第一次写文章,希望大家多多指点。

源码链接:http://download.csdn.net/download/weixin_/











































版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/205563.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午5:44
下一篇 2026年3月19日 下午5:44


相关推荐

  • 线程join方法用处「建议收藏」

    线程join方法用处「建议收藏」参考博客:https://www.cnblogs.com/lcplcpjava/p/6896904.html第一种情况(不使用join):ThreadJoinTestt1=newThreadJoinTest(“小明”);ThreadJoinTestt2=newThreadJoinTest(“小东”);t1.start();

    2022年5月24日
    42
  • UDP协议的详细解析「建议收藏」

    UDP协议的详细解析「建议收藏」UDP数据报一、UDP的概述二、UDP的首部格式UDP校验

    2022年6月7日
    35
  • 画廊效果的ViewPager实现(附带无限自动轮播)[通俗易懂]

    画廊效果的ViewPager实现(附带无限自动轮播)[通俗易懂]废话不多说,先上效果图根据效果所示,第一步实现适配器,完成无限循环首先做数据上的处理publicstaticclassLoopViewPagerAdapterextendsPagerAdapter{ …..LoopViewPagerAdapter(Contextcontext,ArrayList<Integer>imgIds){…

    2022年6月12日
    35
  • Vim编辑完如何保存退出

    Vim编辑完如何保存退出编辑完按Esc退出编辑模式此时输入::wq保存后退出:wq!强制保存后退出:w保存但不退出:w!若文件属性为只读时,强制写入该文档:q不保存并退出:q!不保存并强制退出…

    2022年8月24日
    8
  • 对比学习、自监督学习的理解「建议收藏」

    对比学习、自监督学习的理解「建议收藏」自监督学习定义:自监督学习主要是利用辅助任务从大规模的无监督数据中挖掘自身的监督信息来提高学习表征的质量,通过这种构造监督信息对网络进行训练,从而可以学习到对下游任务具有价值的表征。辅助任务(pretext):可以认为是一种为达到特定训练任务而设计的间接任务。pretext任务的好处是为了简化原任务的求解,在深度学习中就是避免人工标记样本,实现无监督的语义提取。Pretext任务可以进一步理解为:对目标任务有帮助的辅助任务。主要pretexttask包括:图像旋转、图像着色、图像修复。下游任务:图

    2025年11月16日
    7
  • git新建分支及提交代码到分支

    git新建分支及提交代码到分支项目场景 git 仓库中只有一个分支 且已经有上传过代码 新的代码不允许直接把你的代码覆盖上去 所以需要你掌握新建分支的方法问题描述 如果你在没有新建分支的情况下上传代码 将会报错 如下 Tohttps git oschina net erchoc laradock git rejected dev gt dev fetchfirst error failedtopush https git oschina net er

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号