近期在做项目的时候运用到了WIFI模块,想着自己捣鼓捣鼓弄个上位机调试调试。初次接触,长达3天的修修改改终于完成,实现代码比较杂乱,但是可以正常使用。不足之处,还望指正!
话不多说,先看效果:

该助手的话虽说集成了客户端与服务器,但是运行也是分开的。每次只能使用1个功能。当作为服务端时,可随客户端自动断开连接。
以下为具体实现代码:
客户端:

serverIP = IPAddress.Parse(txBip.Text);try{serverFullAddr = new IPEndPoint(serverIP, int.Parse(txBport.Text));//设置IP,端口sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);sock.Connect(serverFullAddr);btcon.Enabled = false;button1.Enabled = false;lab_err.Text = "连接成功";btdiscon.Enabled = true;}catch (Exception ee){MessageBox.Show(ee.Message);}
byte[] byteSend = System.Text.Encoding.Default.GetBytes(this.textBox3.Text);try{lab_err.Text = "发送成功";sock.Send(byteSend);Thread.Sleep(300);}catch (Exception ex){MessageBox.Show(ex.Message);}

代码里可能有一些修改残余在里面,我这边也就是做个调试使用,我自己就懒得再修修改改了,能实现功能就OK了。不影响实际使用。

服务器端:
这边服务器端采用了多线程,listen。

byte[] message = new byte[1024];string mess = "";clientIP = IPAddress.Parse(textBox2.Text);clientFullAddr = new IPEndPoint(clientIP, int.Parse(textBox4.Text));//设置IP,端口sock_server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);sock_server.Bind(clientFullAddr);sock_server.Listen(2);try{socket_server = sock_server.Accept();}catch (Exception ee){if (ee.Message != "一个封锁操作被对 WSACancelBlockingCall 的调用中断。"){MessageBox.Show(ee.Message);}Invoke(new ServerRecClose(ClientClose));return;}while (true){try{int bytes = socket_server.Receive(message);mess = Encoding.Default.GetString(message, 0, bytes);if (mess != "") {Invoke(new PrintRecvMssgDelegate(PrintRecvMssg), mess);}else{Invoke(new ServerRecClose(ClientClose));return;}}catch (Exception ee){if (ee.Message != "一个封锁操作被对 WSACancelBlockingCall 的调用中断。") {MessageBox.Show(ee.Message);}}}
private delegate void PrintRecvMssgDelegate(string s);private void PrintRecvMssg(string info){textBox1.Text += string.Format("{0}\r\n", info);}private delegate void ServerRecClose();private void ClientClose(){sock_server.Close();btcon.Enabled = true;button1.Enabled = true;button2.Enabled = false;label5.Text = "断开连接";}

以上就是全部了,本人也是新手,所以就不多说什么教程之类的了。
有需要源码的可以私聊留下邮箱或者留言邮箱
走过路过,望赏个一键三连~

Visual Studio 2015(C#)编写实现TCP调试助手(服务端+客户端一体)-新手相关推荐

  1. Visual Studio 2015开发Android App启动调试始终无法完成应用部署的解决方案

    创建一个Android App项目后,直接启动调试发现Visual Studio Emulator for Android已成功运行,但应用始终处于Build中(等待时间超过1小时),并未如预期通过a ...

  2. UE4 TCP通信 (UE客户端与网络调试助手服务端、python服务端通信)

    目录 一.使用UE4建立TCP客户端 二.使用网络调试助手建立服务端 三.基于网络调试助手的服务端与UE客户端通信 四.基于python的TCP服务端与UE客户端通信 一.使用UE4建立TCP客户端 ...

  3. 有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...

    有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代 太阳火神的美丽人生 (http://blog.csdn.n ...

  4. Visual Studio 2015开发Android App问题集锦

    Visual Studio 2015开发Android App 启动调试始终无法完成应用部署的解决方案 创建一个Android App项目后,直接启动调试发现Visual Studio Emulato ...

  5. VS2015--win32project配置的一些想法之在 Visual Studio 2015 中进行调试的同一时候分析性能...

    出处: https://msdn.microsoft.com/zh-cn/magazine/dn973013(en-us).aspx 很多开发商花了绝大多数时间获取应用程序才干正常发挥作用.更少的时间 ...

  6. vs远程编译linux程序,使用Visual Studio 2015远程调试Linux程序

    ##安装 Visual Studio 2015 安装时注意将跨平台移动开发->Visual C++移动开发->Viaual C++ Android 开发的选项勾上 ##安装PUTTY Vi ...

  7. 无法附加到进程。Visual Studio 2015 远程调试器(MSVSMON.EXE)似乎没有在远程计算机上运行。

    将程序发布到自己本机IIS里,我们进行内部测试,难免会出现bug,可以通过vs进行调试. 步骤:"调试">="附加到进程",如下界面: 找到进程名称为w3 ...

  8. 【转载】Visual Studio 2015 for Linux更好地支持Linux下的开发

    原文:Visual Studio 2015 for Linux更好地支持Linux下的开发 英文原文:Targeting Linux Made Easier in Visual Studio 2015 ...

  9. Visual Studio 2015 for Linux更好地支持Linux下的开发

    Visual C++ for Linux扩展使Visual Studio 2015的用户可以在VS2015中编写C或者C++代码,并将代码部署到基于Linux的系统中去编译和调试.源代码和项目文件通过 ...

  10. 通过Visual Studio为Linux编写C++代码

    Build 2016大会上Microsoft首次公布的Visual Studio 2015扩展提供了在VS2015中编写C++代码,随后通过Linux/UNIX计算机进行编译和执行的能力.这种想法非常 ...

最新文章

  1. centos下LAMP之源码编译安装httpd
  2. Yii2 解决2006 MySQL server has gone away问题
  3. python经典案例-20个Python练手经典案例,能全做对的人确实很少!
  4. [cpp] 字符数组,字符指针,sizeof,strlen总结
  5. 曹国伟:看准微博做大布局 哪怕革自己的命
  6. 【渝粤题库】陕西师范大学400013 组织行为学 作业(专升本)
  7. android音频杂音问题_Android 音视频去回声、降噪(Android音频采集及回音消除)(转)...
  8. [转] FFmpeg常用基本命令
  9. OpenCV-图像处理(05、图像混合)
  10. excel保存快捷键_这应该算是Windows电脑中最强的几组快捷键!
  11. JAVA宠物寄养管理系统计算机毕业设计Mybatis+系统+数据库+调试部署
  12. 百度离线地图API v3.0开发解决方案
  13. 14.SQL必知必会第15课 插入数据(数据库的备份insert into ... values表的复制操作)
  14. Android 2.2模拟器调出中文输入法
  15. scrapy爬取京东图书的数据
  16. 杰理之VM 概述【篇】
  17. 实验三+163+张玉洁
  18. RAC 和 Oracle Clusterware 最佳实践和初学者指南 (Solaris) (文档 ID 1526517.1)
  19. 通达OA web页面与精灵显示内容更新后不一致的问题
  20. 【高项】各章节知识点概括

热门文章

  1. 隐藏 element-ui上传照片显示的加号盒子
  2. 1、试卷名称2013年下半年系统集成项目管理工程师真题
  3. python毕业设计作品基于django框架 电影院购票选座系统毕设成品(5)任务书
  4. 大航海时代4+伙伴加入条件和港口一览
  5. 国内外各大免费收录网站搜索引擎及导航网址提交入口
  6. 自己动手写网络爬虫学习笔记
  7. 企业微信发送消息php,PHP实现微信模板消息发送给指定用户
  8. 她每天吃一个煮熟的苹果,从此打开了通往新世界的大门~
  9. 【吃豆游戏----HTML+JS+CSS等实现,效果+源代码】
  10. 2020年最新世界地图_2020世界地图下载