資源簡介
基于RSA加密的聊天程序,程序既是客戶端又是服務器,指定IP后,選擇接受即可進行通信。同時顯示發送密文、接收到的密文、密文解析后的聊天記錄,密鑰文件可重新生成,還具有文件傳輸功能。壓縮包內包含全部工程文件,用VS2008可直接運行。已進行過單機試驗和局域網內兩機試驗,沒有錯誤。

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Text;
using?System.Net;
using?System.Net.Sockets;
using?System.Windows.Forms;
namespace?SocketsTest
{
????public?class?TransferFiles
????{
????????//public?TransferFiles()???
????????//{???
????????//????//???
????????//????//?TODO:?在此處添加構造函數邏輯???
????????//????//???
????????//}???
??
??
??
????????public?static?int?SendData(Socket?s?byte[]?data)???
????????{???
????????????int?total?=?0;???
????????????int?size?=?data.Length;???
????????????int?dataleft?=?size;???
????????????int?sent;???
??
????????????while?(total?????????????{???
????????????????sent?=?s.Send(data?total?dataleft?SocketFlags.None);???
????????????????total?+=?sent;???
????????????????dataleft?-=?sent;???
????????????}???
??
????????????return?total;???
????????}???
??
????????public?static?byte[]?ReceiveData(Socket?s?int?size)???
????????{???
????????????int?total?=?0;???
????????????int?dataleft?=?size;???
????????????byte[]?data?=?new?byte[size];???
????????????int?recv;???
????????????while?(total?????????????{???
????????????????recv?=?s.Receive(data?total?dataleft?SocketFlags.None);???
????????????????if?(recv?==?0)???
????????????????{???
????????????????????data?=?null;???
????????????????????break;???
????????????????}???
??
????????????????total?+=?recv;???
????????????????dataleft?-=?recv;???
????????????}???
????????????return?data;???
????????}???
??
????????public?static?int?SendVarData(Socket?s?byte[]?data)???
????????{???
????????????int?total?=?0;???
????????????int?size?=?data.Length;???
????????????int?dataleft?=?size;???
????????????int?sent;???
????????????byte[]?datasize?=?new?byte[4];???
????????????datasize?=?BitConverter.GetBytes(size);???
????????????sent?=?s.Send(datasize);???
??
????????????while?(total?????????????{???
????????????????sent?=?s.Send(data?total?dataleft?SocketFlags.None);???
????????????????total?+=?sent;???
????????????????dataleft?-=?sent;???
????????????}???
??
????????????return?total;???
????????}???
??
????????public?static?byte[]?ReceiveVarData(Socket?s)???
????????{???
????????????int?total?=?0;???
????????????int?recv;???
????????????byte[]?datasize?=?new?byte[4];???
????????????recv?=?s.Receive(datasize?0?4?SocketFlags.None);???
????????????int?size?=?BitConverter.ToInt32(datasize?0);???
????????????int?dataleft?=?size;???
????????????byte[]?data?=?new?byte[size];???
????????????while?(total?????????????{???
????????????????recv?=?s.Receive(data?total?dataleft?SocketFlags.None);???
????????????????if?(recv?==?0)???
????????????????{???
????????????????????data?=?null;???
????????????????????break;???
????????????????}???
????????????????total?+=?recv;???
????????????????dataleft?-=?recv;???
????????????}???
????????????return?data;???
????????}???
????}???
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????516096??2006-08-18?11:50??SocketsTest\SocketsTest\bin\Debug\IrisSkin2.dll
?????文件??????15156??2006-03-22?05:55??SocketsTest\SocketsTest\bin\Debug\MacOS.ssk
?????文件??????16292??2006-03-22?05:55??SocketsTest\SocketsTest\bin\Debug\MSN.ssk
?????文件????????917??2014-01-12?20:09??SocketsTest\SocketsTest\bin\Debug\PrivateKey.xm
?????文件????????245??2014-01-12?20:09??SocketsTest\SocketsTest\bin\Debug\PublicKey.xm
?????文件??????24064??2014-01-12?22:40??SocketsTest\SocketsTest\bin\Debug\SocketsTest.exe
?????文件??????50688??2014-01-12?22:40??SocketsTest\SocketsTest\bin\Debug\SocketsTest.pdb
?????文件??????11592??2014-01-12?22:39??SocketsTest\SocketsTest\bin\Debug\SocketsTest.vshost.exe
?????文件????????490??2007-07-21?01:33??SocketsTest\SocketsTest\bin\Debug\SocketsTest.vshost.exe.manifest
?????文件??????15928??2006-07-18?23:12??SocketsTest\SocketsTest\bin\Debug\Vista2_color7.ssk
?????文件???????2971??2014-01-12?18:53??SocketsTest\SocketsTest\FileClientSocket.cs
?????文件???????9859??2014-01-12?20:36??SocketsTest\SocketsTest\Form1.cs
?????文件??????13336??2014-01-12?18:42??SocketsTest\SocketsTest\Form1.Designer.cs
?????文件???????6387??2014-01-12?18:42??SocketsTest\SocketsTest\Form1.resx
?????文件???????4993??2014-01-12?22:39??SocketsTest\SocketsTest\Form2.cs
?????文件???????3378??2014-01-12?18:49??SocketsTest\SocketsTest\Form2.Designer.cs
?????文件???????5814??2014-01-12?18:49??SocketsTest\SocketsTest\Form2.resx
?????文件???????5944??2014-01-12?19:48??SocketsTest\SocketsTest\Form3.cs
?????文件??????12745??2014-01-12?19:31??SocketsTest\SocketsTest\Form3.Designer.cs
?????文件???????5814??2014-01-12?19:31??SocketsTest\SocketsTest\Form3.resx
?????文件???????1620??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.csproj.FileListAbsolute.txt
?????文件????????963??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.csproj.GenerateResource.Cache
?????文件??????24064??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.exe
?????文件????????180??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.Form1.resources
?????文件????????180??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.Form2.resources
?????文件????????180??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.Form3.resources
?????文件??????50688??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.pdb
?????文件????????180??2014-01-12?22:40??SocketsTest\SocketsTest\obj\Debug\SocketsTest.Properties.Resources.resources
?????文件????????492??2009-12-21?19:04??SocketsTest\SocketsTest\Program.cs
?????文件???????1354??2009-12-21?19:04??SocketsTest\SocketsTest\Properties\AssemblyInfo.cs
............此處省略19個文件信息
- 上一篇:unity模型貼圖滾動腳本
- 下一篇:C#卡爾曼濾波,chart繪圖及時間轉換
評論
共有 條評論