下载此文档

使用C#进行点对点通讯和文件传输.doc


文档分类:通信/电子 | 页数:约29页 举报非法文档有奖
1/29
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/29 下载此文档
文档列表 文档介绍
使用C#进行点对点通讯和文件传输第1页使用C#进行点对点通讯和文件传输程序分三部分,包括发送部分、接受部分和一个两者共享的通讯基类,这个基类才是俺心血的结晶:)一、通讯基类usingSystem;.Sockets;;;;;namespaceBaseClass{///传送信息的格式为给定长度的命令部分+给定长度的命令注释部分+可变长度的长度信息+munClass{munClass(){//TODO:在此处添加构造函数逻辑}///命令部分的长度privatestaticreadonlyintCMDLEN=50;///命令注释部分的长度privatestaticreadonlyintDESCLEN=100;///可变长度的长度信息部分所占的字节数privatestaticreadonlyintDYNAMICLENGTHLEN=10;///每次处理可变信息部分的长度privatestaticreadonlyintDEALLEN=1024;////应答的最大长度privatestaticreadonlyintRESPONLEN=20;///用于填充命令或注释不足长度部分的字符privatestaticreadonlycharFILLCHAR=''^'';///成功发送一部分数据后的回调方法(也可以认为是触发的事件,但严格来说还不是)publicdelegatevoidOnSend(intiTotal,intiSending);///根据给定的服务器和端口号建立连接///服务器名///端口号publicstaticSocketConnectToServer(stringstrHost,intiPort){try{IPAddressipAddress=(strHost).AddressList[0];IPEndPointipPoint=newIPEndPoint(ipAddress,iPort);Sockets=newSocket(,,);(ipPoint);returns;}catch(Exceptione){throw(newException("建立到服务器的连接出错"+));}}///将文本写到Socket中///要发送信息的Socket///要发送的信息///是否成功publicstaticboolWriteTextToSocket(Sockets,stringstrInfo){byte[]buf=(strInfo);try{(buf,0,,);returntrue;}catch(Exceptionerr){("发送文本失败!"+);returnfalse;}}///将命令文本写到Socket中///要发送命令文本的Socket///要发送的命令文本//mandToSocket(Sockets,stringstrCmd){if(strCmd=="")strCmd="NOP";strCmd=(CMDLEN,FILLCHAR);returnWriteTextToSocket(s,strCmd);}//////将命令注释写到Socket中//////要发送命令注释的Socket///要发送的命令注释///mandDescToSocket(Sockets,stringstrDesc){if(strDesc=="")strDesc="0";strDesc=(DESCLEN,FILLCHAR);returnWriteTextToSocket(s,strDesc);}///发送可变信息的字节数///要发送字节数的Socket///字节数///是否成功publicstaticboolWriteDynamicLenToSocket(Sockets,intiLen){stringstrLen=().PadRight(DYNAMICLENGTHLEN,FILLCHAR);returnWriteTextToSocket(s,strLen);}///将缓存的指定部分发送到Socket///要发送缓存的Socket///要发送的缓存///要发送缓存的起始位置///要发送缓存的字节数///每次发送的字节说///每次发送成功后的回调函数///是否发送成功

使用C#进行点对点通讯和文件传输 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数29
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小56 KB
  • 时间2019-09-17