資源簡介
Socket多線程實例.rar

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Windows.Forms;
namespace?ChartClient
{
????public?partial?class?ClientMain?:?Form
????{
????????public?ClientMain()
????????{
????????????InitializeComponent();
????????}
????????//NetworkStream
????????System.Net.Sockets.NetworkStream?ns;
????????//數據量
????????System.IO.StreamReader?sr;
????????//客戶端連接
????????System.Net.Sockets.TcpClient?clientsocket;
????????//是否連接
????????bool?connected;
????????//接收信息線程
????????System.Threading.Thread?receive;
????????//服務器網絡地址
????????string?serveraddress?=?“192.168.104.110“;
????????//服務器端口號
????????int?serverport?=?6666;
????????//客戶端連接名稱
????????string?clientname;
????????//操縱其他線程
????????System.Threading.Thread?t;
????????//實現操縱其他線程委托
????????public?delegate?void?MyInvoke(string?c);
????????private?void?btnConnect_Click(object?sender?EventArgs?e)
????????{
????????????//連接服務器
????????????EstablishConnection();
????????????//注冊
????????????RegisterWithServer();
????????????//連接成功
????????????if?(connected)
????????????{
????????????????//接受信息線程
????????????????receive?=?new?System.Threading.Thread(new?System.Threading.ThreadStart(ReceiveChat));
????????????????//啟動線程
????????????????receive.Start();
????????????}
????????}
????????private?void?btnDisconnect_Click(object?sender?EventArgs?e)
????????{
????????????//退出
????????????QuitChat();
????????}
????????private?void?btnSend_Click(object?sender?EventArgs?e)
????????{
????????????//連接成功
????????????if?(connected)
????????????{
????????????????try
????????????????{
????????????????????//創建信息
????????????????????string?command?=?“CHAT|“?+?clientname?+?“:“?+?ChatOut.Text?+?“\r\n“;
????????????????????//轉化為字節流
????????????????????Byte[]?outbytes?=?System.Text.Encoding.ASCII.GetBytes(command.ToCharArray());
????????????????????//發送信息
????????????????????ns.Write(outbytes?0?outbytes.Length);
????????????????}
????????????????catch?(Exception?ex)
????????????????{
????????????????????MessageBox.Show(“發生錯誤:“?+?ex.Message?“錯誤“?MessageBoxButtons.OK?MessageBoxIcon.Exclamation);
????????????????}
????????????}
????????}
????????///?
????????///?連接服務器
????????///?
????????private?void?EstablishConnection()
????????{
????????????//更改提示欄狀態
????????????statusBar1.Text?=?“正在連接到服務器“;
????????????try
????????????{
????????????????//根據網絡地址和端口號獲取服務器端連接
????????????????clientsocket?=?new?System.Net.Sockets.TcpClient(serveraddress?serverport);
????????????????//獲取發送和接受數據的NetWorkStream
????????????????ns?=?clientsocket.GetStream();
????????????????//為NetWorkStream?初始化StreamReader實例
????????????????sr?=?new?System.IO.StreamReader(ns);
????????????????//設置為已連接
????????????????connected?=?true;
????????????}
????????????catch?(Exception?e)
????????????{
????????????????//提示信息
????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????14336??2011-01-07?09:28??ChartClient\bin\Debug\ChartClient.exe
?????文件??????40448??2011-01-07?09:28??ChartClient\bin\Debug\ChartClient.pdb
?????文件??????11608??2011-01-07?09:32??ChartClient\bin\Debug\ChartClient.vshost.exe
?????文件????????490??2010-03-17?22:39??ChartClient\bin\Debug\ChartClient.vshost.exe.manifest
?????文件???????5446??2011-01-06?10:02??ChartClient\ChartClient.csproj
?????文件????????451??2011-01-06?10:02??ChartClient\ChartClient.csproj.user
?????文件??????13658??2011-01-07?09:28??ChartClient\ClientMain.cs
?????文件???????6458??2011-01-06?16:31??ChartClient\ClientMain.Designer.cs
?????文件???????5814??2011-01-06?16:31??ChartClient\ClientMain.resx
?????文件????????180??2011-01-06?16:31??ChartClient\obj\Debug\ChartClient.ClientMain.resources
?????文件???????2072??2011-01-07?09:32??ChartClient\obj\Debug\ChartClient.csproj.FileListAbsolute.txt
?????文件????????852??2011-01-04?11:35??ChartClient\obj\Debug\ChartClient.csproj.GenerateResource.Cache
?????文件??????14336??2011-01-07?09:28??ChartClient\obj\Debug\ChartClient.exe
?????文件??????40448??2011-01-07?09:28??ChartClient\obj\Debug\ChartClient.pdb
?????文件????????180??2011-01-06?10:03??ChartClient\obj\Debug\ChartClient.Properties.Resources.resources
?????文件???????6170??2011-01-07?09:28??ChartClient\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????文件????????858??2011-01-06?16:31??ChartClient\obj\Debug\GenerateResource-ResGen.read.1.tlog
?????文件????????958??2011-01-06?16:31??ChartClient\obj\Debug\GenerateResource-ResGen.write.1.tlog
?????文件???????4608??2011-01-06?10:02??ChartClient\obj\Debug\TempPE\Properties.Resources.Designer.cs.dll
?????文件????????497??2011-01-04?10:08??ChartClient\Program.cs
?????文件???????1354??2011-01-04?09:56??ChartClient\Properties\AssemblyInfo.cs
?????文件???????2858??2011-01-06?10:02??ChartClient\Properties\Resources.Designer.cs
?????文件???????5612??2011-01-04?09:56??ChartClient\Properties\Resources.resx
?????文件???????1107??2011-01-06?10:02??ChartClient\Properties\Settings.Designer.cs
?????文件????????249??2011-01-04?09:56??ChartClient\Properties\Settings.settings
?????文件??????38400??2011-01-07?09:32??ChartServer\bin\Debug\ChartServer.pdb
?????文件??????11608??2011-01-06?14:28??ChartServer\bin\Debug\ChartServer.vshost.exe
?????文件????????490??2010-03-17?22:39??ChartServer\bin\Debug\ChartServer.vshost.exe.manifest
?????文件???????5483??2011-01-06?10:02??ChartServer\ChartServer.csproj
?????文件????????451??2011-01-06?10:02??ChartServer\ChartServer.csproj.user
............此處省略41個文件信息
- 上一篇:IBM項目經理培訓全套資料
- 下一篇:txt編碼轉換
評論
共有 條評論