91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 75KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-09
  • 語言: C#
  • 標簽: C/S??

資源簡介

C#基于TCP的Socket多線程通信(包含服務端和客戶端) 代碼都有注釋,方便新手閱讀

資源截圖

代碼片段和文件信息

using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
using?System.Net.Sockets;
using?System.Net;
using?System.Threading;
using?System.IO;


namespace?IOTClient
{
????public?partial?class?Form1?:?Form
????{
????????public?Form1()
????????{
????????????InitializeComponent();
????????????TextBox.CheckForIllegalCrossThreadCalls?=?false;
????????}

????????private?void?Form1_Load(object?sender?EventArgs?e)
????????{

????????}

????????Socket?sokClient?=?null;//負責與服務端通信的套接字
????????Thread?threadClient?=?null;//負責?監聽?服務端發送來的消息的線程
????????bool?isRec?=?true;//是否循環接收服務端數據

????????private?void?btnConnect_Click(object?sender?EventArgs?e)
????????{
????????????//實例化?套接字
????????????sokClient?=?new?Socket(AddressFamily.InterNetwork?SocketType.Stream?ProtocolType.Tcp);
????????????//創建?ip對象
????????????IPAddress?address?=?IPAddress.Parse(txtIP.Text.Trim());
????????????//創建網絡節點對象?包含?ip和port
????????????IPEndPoint?endpoint?=?new?IPEndPoint(address?int.Parse(txtPort.Text.Trim()));
????????????//連接?服務端監聽套接字
????????????sokClient.Connect(endpoint);

????????????//創建負責接收?服務端發送來數據的?線程
????????????threadClient?=?new?Thread(ReceiveMsg);
????????????threadClient.IsBackground?=?true;
????????????//如果在win7下要通過?某個線程?來調用?文件選擇框的代碼,就需要設置如下
????????????threadClient.SetApartmentState(ApartmentState.STA);
????????????threadClient.Start();
????????}

????????///?
????????///?接收服務端發送來的消息數據
????????///?

????????void?ReceiveMsg()
????????{
????????????while?(isRec)
????????????{
????????????????byte[]?msgArr?=?new?byte[1024?*?1024?*?1];//接收到的消息的緩沖區
????????????????int?length?=?0;
????????????????//接收服務端發送來的消息數據
????????????????length?=?sokClient.Receive(msgArr);//Receive會阻斷線程
????????????????if?(msgArr[0]?==?0)//發送來的是文字
????????????????{
????????????????????string?strMsg?=?System.Text.Encoding.UTF8.GetString(msgArr?1?length?-?1);
????????????????????txtShow.AppendText(strMsg?+?“\r\n“);
????????????????}
????????????????else?if?(msgArr[0]?==?1)
????????????????{?//發送來的是文件
????????????????????SaveFileDialog?sfd?=?new?SaveFileDialog();
????????????????????//彈出文件保存選擇框
????????????????????if?(sfd.ShowDialog()?==?System.Windows.Forms.DialogResult.OK)
????????????????????{
????????????????????????//創建文件流
????????????????????????using?(FileStream?fs?=?new?FileStream(sfd.FileName?FileMode.OpenOrCreate))
????????????????????????{
????????????????????????????fs.Write(msgArr?1?length?-?1);
????????????????????????????MessageBox.Show(“文件保存成功!“);
????????????????????????}
????????????????????}
????????????????}
????????????????else?if?(msgArr[0]?==?2)
????????????????{
????????????????????ShakeWindow();
????????????????}
????????????}
????????}

????????///?
????????///?閃屏
????????///?

????????private?void?ShakeWindow()
????????{
????????????Rand

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????20480??2012-04-11?20:39??IOTClient\IOTClient\bin\Debug\IOTClient.exe

?????文件??????22016??2012-04-11?20:39??IOTClient\IOTClient\bin\Debug\IOTClient.pdb

?????文件???????5632??2005-12-08?14:51??IOTClient\IOTClient\bin\Debug\IOTClient.vshost.exe

?????文件???????4194??2012-04-11?20:39??IOTClient\IOTClient\Form1.cs

?????文件???????5578??2012-04-11?20:39??IOTClient\IOTClient\Form1.Designer.cs

?????文件???????5814??2012-04-11?20:39??IOTClient\IOTClient\Form1.resx

?????文件???????3225??2012-04-11?20:22??IOTClient\IOTClient\IOTClient.csproj

?????文件????????842??2012-04-11?20:39??IOTClient\IOTClient\obj\Debug\IOTClient.csproj.GenerateResource.Cache

?????文件??????20480??2012-04-11?20:39??IOTClient\IOTClient\obj\Debug\IOTClient.exe

?????文件????????180??2012-04-11?20:39??IOTClient\IOTClient\obj\Debug\IOTClient.Form1.resources

?????文件??????22016??2012-04-11?20:39??IOTClient\IOTClient\obj\Debug\IOTClient.pdb

?????文件????????180??2012-04-11?20:22??IOTClient\IOTClient\obj\Debug\IOTClient.Properties.Resources.resources

?????文件????????282??2012-04-11?20:50??IOTClient\IOTClient\obj\IOTClient.csproj.FileList.txt

?????文件????????468??2012-04-11?20:17??IOTClient\IOTClient\Program.cs

?????文件???????1190??2012-04-11?20:17??IOTClient\IOTClient\Properties\AssemblyInfo.cs

?????文件???????2872??2012-04-11?20:17??IOTClient\IOTClient\Properties\Resources.Designer.cs

?????文件???????5612??2012-04-11?20:17??IOTClient\IOTClient\Properties\Resources.resx

?????文件???????1092??2012-04-11?20:17??IOTClient\IOTClient\Properties\Settings.Designer.cs

?????文件????????249??2012-04-11?20:17??IOTClient\IOTClient\Properties\Settings.settings

?????文件????????916??2012-04-11?20:17??IOTClient\IOTClient.sln

????..A..H.?????13312??2012-04-11?20:56??IOTClient\IOTClient.suo

?????文件??????24576??2012-04-11?20:49??IOTServer\IOTServer\bin\Debug\IOTServer.exe

?????文件??????28160??2012-04-11?20:49??IOTServer\IOTServer\bin\Debug\IOTServer.pdb

?????文件???????5632??2005-12-08?14:51??IOTServer\IOTServer\bin\Debug\IOTServer.vshost.exe

?????文件???????4830??2012-04-11?20:12??IOTServer\IOTServer\ConnectionClient.cs

?????文件???????6054??2012-04-11?20:48??IOTServer\IOTServer\IOTServer.cs

?????文件???????3292??2012-04-11?20:00??IOTServer\IOTServer\IOTServer.csproj

?????文件???????8079??2012-04-11?20:49??IOTServer\IOTServer\IOTServer.Designer.cs

?????文件???????5814??2012-04-11?20:48??IOTServer\IOTServer\IOTServer.resx

?????文件????????904??2012-04-11?20:48??IOTServer\IOTServer\obj\Debug\IOTServer.csproj.GenerateResource.Cache

............此處省略34個文件信息

評論

共有 條評論