【Visual Studio 2019 C# TCP通信调试助手】

基于VS 的C#TCP/IP通信

写在前面的话:
本文是在vs平台上使用C#编写的tcp服务端与客户端局域网通信,使用vs工具箱中的TextBox、ListBox、Button等组件编辑的Ui界面。与上一篇(QT C++ TCP通信调试助手) 用c++写的功能基本相同。上一篇链接

一 、vs中项目创建过程:

1. 步骤:

打开vs2019 -> 文件 ->新建 -> 项目 ->Windows 窗体应用(.NET Framework)-> 下一步 -> 创建

2. UI界面的布局:

tcp/ip通信UI界面布局

其中TabControl 组件中的ServerClientWeb、选项卡分别代表Tcp服务端、Tcp客户端、WebBrowser的界面。

3. 最终的运行效果:

最终运行的效果

二、 项目代码结构

1、 Tcp Server端:

        //----------------------------------- 服务器 -------------------------------------------------

        Socket socket;
        //服务器端的监听按钮对应的事件响应函数
        private void server_monitor_button_Click(object sender, EventArgs e);
        
        //监听客户端的新连接
        void Listen1(object o);
        
        //有新的连接后刷新显示
        public delegate void D_my_dis(Socket socket);

        public void My_Dis(Socket socket);

        //接收客户端的消息后刷新显示
        public delegate void D_rec_dis(Socket socket, string s);

        public void rec_dis(Socket socket, string s);
       
        //接收来自客户端的信息
        void Recive(object o);
       
        //获得网卡IPV4地址
        public static List<string> Get_ip();
       
        //服务端发送按钮对应的事件响应函数
        private void server_send_button_Click(object sender, EventArgs e);
    
        //服务端键盘响应事件
        private void server_send_button_KeyUp(object sender, KeyEventArgs e);
        
     	//服务端刷新显示和客户端连接状态的时钟事件
     	private void timer1_Tick(object sender, EventArgs e);
     	
     	//服务端键盘响应事件
     	private void server_send_button_KeyUp(object sender, KeyEventArgs e);
        //------------------------------------- end --------------------------------------------------

2、 Tcp Client 端:

		//------------------------------------- 客户端_start ------------------------------------------------
		
  		//客户端连接按钮对应的事件响应函数
		private void client_connect_button_Click(object sender, EventArgs e);
		
		//接收服务端发送的信息
		void reciveMessages();
		
		//断开连接后的刷新显示
		public delegate void D_reciveDis(Socket socket);
		
		public void reciveDis(Socket socket);
		
		//接收服务端信息后的显示
        public delegate void D_Recive(Socket socket, string s);
        
        public void My_Recive(Socket socket, string s);
        
        //客户端发送按钮对应的事件响应函数
        private void client_send_button_Click(object sender, EventArgs e);
        
        //客户端清理按钮对应的事件响应函数
        private void client_clear_button_Click(object sender, EventArgs e);
        
        //客户端键盘事件对应的响应函数
        private void client_send_button_KeyUp(object sender, KeyEventArgs e);
        
		//------------------------------------- 客户端_end------------------------------------------------        
		

3、Web界面:

		// web界面中button的响应函数
		private void button1_Click_1(object sender, EventArgs e);

		// web界面的textbox响应的键盘事件
        private void url_textBox_KeyDown(object sender, KeyEventArgs e);

三、 总结

1、好了今天就写到到这了,最后附上源码的链接如下:

具体的实现过程源码及编译好的应用程序项目源码

有趣的灵魂千里挑一!!!!

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值