亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? form1.cs

?? 網絡聊天,寫的比較簡單,但比較容易看懂,別的就不用說了吧
?? CS
?? 第 1 頁 / 共 2 頁
字號:
			Application.Run(new Form1());
		}

		private void Form1_Load(object sender, System.EventArgs e)
		{
			
			//InitSocket(ref mySoc);
		}

		public void startListen()
		{
			int nPort = Convert.ToInt32(txtPort.Text);
			
			IPEndPoint ipLocalEndPoint;
			try
			{
				IPAddress ipAddress = Dns.Resolve("localhost").AddressList[0];
				ipLocalEndPoint = new IPEndPoint(ipAddress, nPort); //Listen at Port 999
			}
			catch(SocketException socErr )
			{
				label1.Text=socErr.Message;
				return;
			}
           
			try
			{
				ListenSoc = new WSocket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.Tcp );
				ListenSoc.Soc.Bind(ipLocalEndPoint);
				ListenSoc.Soc.Listen(100);
				while (true)
				{
					allDone.Reset();
					ListenSoc.Soc.BeginAccept(new AsyncCallback(AcceptCallback),ListenSoc);
					allDone.WaitOne();

				}

			}
			catch(Exception err) 
			{
				label1.Text =err.Message;
			}
		}

		public void AcceptCallback(IAsyncResult ar) 
		{
			try
			{
				allDone.Set();
				WSocket listener = (WSocket) ar.AsyncState;
				int nSoc = GetAvailbleSocket();
				SocClient[nSoc].Soc = (Socket)ListenSoc.Soc.EndAccept(ar);
				
				SocClient[nSoc].SockRefNo = nSocRef;
				SocClient[nSoc].RemoteUserName = txtIP.Text;
				SocClient[nSoc].OnConnected += new ConnectDelegate(OnConnected);
				SocClient[nSoc].OnDisconnected += new DisconnectDelegate(OnDisconnected);
				SocClient[nSoc].OnReadyReceive += new ReceiveDelegate(OnReceive);
				SocClient[nSoc].OnReadySend += new SendDelegate(OnReadySend);
				SocClient[nSoc].OnConnectClose += new CloseDelegate(OnCloseRemote);
                SocClient[nSoc].OnSockMessage += new MessageDelegate(OnSockMessage);
				SocClient[nSoc].OnSendingFile += new  SendingDelegate(OnSending);
                SocClient[nSoc].OnReceiveFile += new RecvFileDelegate(OnSending);

				SocClient[nSoc].ReceiveData();  
				ListViewItem item = new ListViewItem();
				item.Text = nSoc.ToString();
				item.SubItems.Add(SocClient[nSoc].Soc.RemoteEndPoint.ToString());
				item.SubItems.Add(txtIP.Text);
			  
				listView1.Items.Add(item);

			}
			catch(Exception err) 
			{
				
				label1.Text ="Accept :"+ err.Message +err.Source.ToString();
			}
		}



		private void InitSocket(ref WSocket Soc,int nSocRef)
		{
			try
			{
				Soc = new WSocket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.Tcp );
				Soc.SockRefNo = nSocRef;
				Soc.RemoteUserName = txtIP.Text;
				Soc.OnConnected += new ConnectDelegate(OnConnected);
				Soc.OnDisconnected += new DisconnectDelegate(OnDisconnected);
				Soc.OnReadyReceive += new ReceiveDelegate(OnReceive);
				Soc.OnReadySend += new SendDelegate(OnReadySend);
				Soc.OnConnectClose += new CloseDelegate(OnCloseRemote);
				Soc.OnSocketError += new SockErrDelegate(OnSocketError);
				Soc.OnSockMessage += new MessageDelegate(OnSockMessage);
				Soc.OnSendingFile += new SendingDelegate(OnSending);
				Soc.OnReceiveFile += new RecvFileDelegate(OnSending);
			}
			catch(Exception err) 
			{
				label1.Text =err.Message;
			}
		}

		private void RomoveSocEvent(ref WSocket Soc)
		{
			try
			{
				Soc.OnConnected -= new ConnectDelegate(OnConnected);
				Soc.OnDisconnected -= new DisconnectDelegate(OnDisconnected);
				Soc.OnReadyReceive -= new ReceiveDelegate(OnReceive);
				Soc.OnReadySend -= new SendDelegate(OnReadySend);
				Soc.OnConnectClose -= new CloseDelegate(OnCloseRemote);
				Soc.OnSocketError -= new SockErrDelegate(OnSocketError);
				Soc.OnSockMessage -= new MessageDelegate(OnSockMessage);
				Soc.OnSendingFile -= new SendingDelegate(OnSending);
				Soc.OnReceiveFile -= new RecvFileDelegate(OnSending);
			}
			catch(Exception err) 
			{
				label1.Text =err.Message;
			}
		}
        
		private void button1_Click(object sender, System.EventArgs e)
		{
			int nPort = Convert.ToInt32(txtCPort.Text);
			IPEndPoint ipLocalEndPoint;
			try
			{
				IPAddress ipAddress = Dns.Resolve(txtIP.Text.ToString()).AddressList[0];
				ipLocalEndPoint = new IPEndPoint(ipAddress, nPort);
			}
			catch(SocketException socErr )
			{
				MessageBox.Show(socErr.Message);
				return;
			}
            int nSoc = GetAvailbleSocket();
            try
			{  
				
			    SocClient[nSoc].SockRefNo = nSoc;	
				if (SocClient[nSoc]==null)
					InitSocket(ref SocClient[nSoc],nSoc);

				if (!SocClient[nSoc].Soc.Connected)
					SocClient[nSoc].AsyConnectTCIP(ipLocalEndPoint);	
			}
			catch (Exception err) 
			{
				label1.Text="Connect Button :"+err.Message;
				InitSocket(ref SocClient[nSoc],nSoc);
			}
		 
		}

		private void OnConnected(object sender, SockEventArgs e)
		{
		   	label1.Text = "Connected";
			SocClient[e.SocketRef].ReceiveData();
			//listBox2.Items.Add(e.SocketRef.ToString()+SocClient[e.SocketRef].RemoteEndPoint.ToString());
			//listView1.Items.Add(
			ListViewItem item = new ListViewItem();
			  item.Text = e.SocketRef.ToString();
			  item.SubItems.Add(SocClient[e.SocketRef].Soc.RemoteEndPoint.ToString());
			  item.SubItems.Add(e.RemoteUserName);
			  
		    listView1.Items.Add(item);
		}

		private void OnDisconnected(object sender, SockEventArgs e)
		{
		    label1.Text = "Disconnected";
			RomoveSocEvent(ref SocClient[e.SocketRef]);
			
			 
		}

		private void OnSending(object sender, SockEventArgs e)
		{   
            double nSize = Convert.ToDouble(e.SockMsg);
			int Val =Convert.ToInt32((e.ByteSend/nSize)*100);
			txtPer.Text = Val.ToString()+" %";
			prgBar.Value= Val;
			//listBox1.Items.Add(e.SockMsg+ " "+e.ByteSend.ToString()+" = "+ Val.ToString() );
		}

		private void OnSockMessage(object sender, SockEventArgs e)
		{
			listBox1.Items.Add(txtIP.Text+" <<"+ e.SockMsg);
		}

		private void OnReceive(object sender, SockEventArgs e)
		{
			
			//listBox1.Items.Add(txtIP.Text+" <<"+ SocClient[e.SocketRef].response.ToString());
			//listBox1.SelectedIndex =listBox1.Items.Count;
			//SocClient[e.SocketRef].response.Remove(0,SocClient[e.SocketRef].response.Length);
		}

		private void OnReadySend(object sender, SockEventArgs e)
		{
			label1.Text = "Ready to send";
		}

		private void OnSocketError(object sender, SockEventArgs e)
		{
			label1.Text = e.SockMsg;
		}

		private void OnCloseRemote(object sender, SockEventArgs e)
		{
			
			label1.Text = "Remote Close";
			nClose +=1;
			txtClose.Text = nClose.ToString();  
			foreach (ListViewItem aa in listView1.Items)
			{
				if (aa.Text == e.SocketRef.ToString())
				{
					listView1.Items.Remove(aa);
					break;
				}
			}
		}

		private void button2_Click(object sender, System.EventArgs e)
		{
			try
			{
				if (mySoc!=null)
				{   
					if (mySoc.Soc.Connected)
						mySoc.DisConnectTCIP();
				}
			}
			catch (ObjectDisposedException err) 
			{
				MessageBox.Show(err.Message);
			}
		
		}

		private void button3_Click(object sender, System.EventArgs e)
		{
			SendMulText();
		}

		private void SendMsg(string str)
		{
			mySoc.SendData(str);
		}

		private void button4_Click(object sender, System.EventArgs e)
		{
			mySoc.ReceiveData();
		}

		private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
		{
			if (e.KeyValue==13)
			{
		        SendMulText();
			}
 
		}

		private void SendMulText()
		{
			string[] tempArray = new string [textBox1.Lines.Length];
			tempArray = textBox1.Lines;
 
			for(int counter=0; counter < tempArray.Length;counter++)
			{
				if (tempArray[counter].Length > 0)
				{
					//mySoc.SendData(tempArray[counter]);
					SendToAllConnectedUse(tempArray[counter]);
					
				}
				listBox1.Items.Add("Me >>"+ tempArray[counter]);
			}
			textBox1.Clear();
		}

		private void SendToAllConnectedUse(string data)
		{
          int nSoc;
			foreach (ListViewItem user in listView1.Items)
			{
				try
				{
					nSoc= Convert.ToInt32(user.SubItems[0].Text);
					if (SocClient[nSoc]!=null)
					{
						if (SocClient[nSoc].Soc.Connected)
							SocClient[nSoc].SendData(data);   
					}
				}
				catch (Exception err) 
				{
					label1.Text="GetSock :"+err.Message;
				}
			 
			}
		}

		private int GetAvailbleSocket()
		{
			int i=-1;
			for( i=0;i<MAX_SOCKET;i++)
			{
				try
           	    {
					if (SocClient[i]==null)
						break;
					else
 					{
					    if (!SocClient[i].Soc.Connected)
						    break;
					}
				}
			   catch (Exception err) 
			   {
			  	  label1.Text="GetSock :"+err.Message;
			   }

			}

          if ((i>-1)&& (i <MAX_SOCKET))  
			  InitSocket(ref SocClient[i],i);
          txtSoc.Text= "Select Socket is :"+i.ToString();
		  return i;
		}

		private void button4_Click_1(object sender, System.EventArgs e)
		{
			serverThread = new Thread(new ThreadStart(startListen));
			serverThread.Start();
			button4.Enabled=false;

		}

		private void Form1_Closed(object sender, System.EventArgs e)
		{
			
		}

		private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
		{
			if (serverThread!=null)
			{
				if (serverThread.IsAlive)
				{
					if (ListenSoc.Soc.Connected)
					{
						ListenSoc.Soc.Shutdown(SocketShutdown.Both);
						ListenSoc.Soc.Close();
					}
					serverThread.Abort();
				}
			}
		}

		private void listView1_DoubleClick(object sender, System.EventArgs e)
		{	
			int pos = listView1.SelectedItems[0].Index; 
		    int nSoc = Convert.ToInt32(listView1.SelectedItems[0].SubItems[0].Text); 
			if (MessageBox.Show("Confirm to disconnect this user ?","Diconnect",MessageBoxButtons.YesNo)==DialogResult.Yes)
			{
				try
				{
					if (SocClient[nSoc]!=null)   	
					{
						if (SocClient[nSoc].Soc.Connected)
						{
							SocClient[nSoc].CloseSocket();
						}
					}
				}
				catch (Exception err) 
				{
					label1.Text="GetSock :"+err.Message;
				}
				
				
			}
		}

		private void butFileName_Click(object sender, System.EventArgs e)
		{
			if (openFile.ShowDialog(this)==DialogResult.OK)
			   txtFileName.Text = openFile.FileName;

		}

		private void bSendFile_Click(object sender, System.EventArgs e)
		{
			int nSoc;
			foreach (ListViewItem user in listView1.Items)
			{
				try
				{
					nSoc= Convert.ToInt32(user.SubItems[0].Text);
					if (SocClient[nSoc]!=null)
					{
						if (SocClient[nSoc].Soc.Connected)
							SocClient[nSoc].SendFile(txtFileName.Text);
					}
				}
				catch (Exception err) 
				{
					label1.Text="GetSock :"+err.Message;
				}
			 
			}
		}

	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
caoporn国产一区二区| 久久一日本道色综合| 欧美一级片免费看| 国产亚洲成年网址在线观看| 亚洲另类在线视频| 国产精品亚洲视频| 日韩欧美一级二级| 亚洲一二三四久久| 不卡的av在线| 26uuu久久综合| 免费人成在线不卡| 欧美美女一区二区在线观看| 亚洲视频狠狠干| 成人在线一区二区三区| 久久婷婷久久一区二区三区| 日韩成人一级片| 欧美日韩精品一区二区三区蜜桃| 欧美极品xxx| 国产精品一二三区| 久久久国产精品麻豆| 美女一区二区三区在线观看| 91.麻豆视频| 午夜精品久久一牛影视| 91国内精品野花午夜精品| 亚洲天堂精品在线观看| jlzzjlzz亚洲女人18| 国产精品久久久久久久岛一牛影视 | 亚洲视频每日更新| 成人动漫一区二区三区| 亚洲国产成人自拍| 亚洲素人一区二区| 国产精一品亚洲二区在线视频| 欧美性大战xxxxx久久久| 亚洲精品免费在线播放| 91一区一区三区| 亚洲精品免费在线| 91亚洲男人天堂| 亚洲老司机在线| 欧美三级一区二区| 日韩高清不卡一区二区| 欧美电影免费观看完整版| 美国十次综合导航| 久久免费看少妇高潮| 成人国产精品免费网站| 亚洲欧美在线另类| 欧美欧美欧美欧美| 久久精品999| 国产精品美女久久久久aⅴ| 91丨porny丨最新| 亚洲一区二区三区爽爽爽爽爽| 欧美日韩精品一区二区| 美女视频网站黄色亚洲| 国产人妖乱国产精品人妖| 97久久人人超碰| 五月婷婷激情综合网| 日韩精品一区二区三区中文不卡| 国产一本一道久久香蕉| 亚洲欧美在线视频| 欧美一区中文字幕| 成人综合在线网站| 亚洲午夜av在线| 久久精品亚洲精品国产欧美| 99免费精品视频| 三级亚洲高清视频| 中文字幕成人av| 51午夜精品国产| 成人听书哪个软件好| 亚洲成a人在线观看| 久久老女人爱爱| 欧美日韩日日摸| 风流少妇一区二区| 日韩影院在线观看| 中文字幕日韩av资源站| 91麻豆精品国产| av成人免费在线观看| 久久成人18免费观看| 亚洲摸摸操操av| 精品国产欧美一区二区| 日本高清无吗v一区| 国产在线一区二区综合免费视频| 一区二区三区四区视频精品免费| 日韩美女视频一区二区在线观看| 色综合久久88色综合天天| 国产精品18久久久久| 日韩av网站免费在线| 亚洲人成精品久久久久久 | 一本大道综合伊人精品热热| 久久成人麻豆午夜电影| 亚洲午夜免费电影| 国产精品欧美久久久久一区二区| 欧美剧情片在线观看| 91同城在线观看| 福利一区福利二区| 国产一区二区三区观看| 青青草一区二区三区| 午夜久久久久久电影| 亚洲欧洲日韩av| 日本一区二区三区四区在线视频| 欧美精品久久久久久久多人混战| 91亚洲精华国产精华精华液| 成人中文字幕合集| 国产成人aaaa| 夫妻av一区二区| 高清成人免费视频| 国产精品白丝av| 国产乱码精品一区二区三区av| 日本伊人色综合网| 视频一区在线视频| 日日摸夜夜添夜夜添亚洲女人| 一个色综合av| 亚洲成人三级小说| 天堂精品中文字幕在线| 天堂蜜桃91精品| 奇米888四色在线精品| 奇米一区二区三区| 免费成人在线观看| 久久精工是国产品牌吗| 精品一区二区影视| 国产精品18久久久久久久久| 国产精品综合二区| 成人久久久精品乱码一区二区三区 | 91亚洲精品一区二区乱码| 99精品黄色片免费大全| 91免费版在线| 精品视频免费在线| 日韩免费高清av| 国产日韩综合av| 日韩一区在线播放| 亚洲成精国产精品女| 日本成人超碰在线观看| 精品一区二区免费看| 国产精品综合久久| 91网上在线视频| 91精品国产丝袜白色高跟鞋| 日韩欧美专区在线| 欧美激情在线观看视频免费| 亚洲日本乱码在线观看| 午夜精品成人在线视频| 精品一区二区久久| 波多野结衣精品在线| 欧美亚洲国产一区二区三区va | 欧美综合一区二区| 欧美一级在线免费| 久久久高清一区二区三区| 一区二区三区高清在线| 奇米在线7777在线精品| 成人性视频免费网站| 欧美日韩中文字幕一区| 久久精品在线观看| 亚洲最快最全在线视频| 狠狠色综合日日| 在线观看一区二区精品视频| 欧美成人女星排名| 亚洲欧洲av在线| 久久成人综合网| 在线亚洲一区二区| 久久综合色综合88| 亚洲国产va精品久久久不卡综合| 国产一区二区三区不卡在线观看| 91蜜桃婷婷狠狠久久综合9色| 在线电影一区二区三区| 国产精品国产三级国产有无不卡 | 成人污视频在线观看| 欧美高清视频在线高清观看mv色露露十八 | 中文字幕在线不卡| 激情图片小说一区| 欧美三级日韩在线| 亚洲人被黑人高潮完整版| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲欧美另类小说| 紧缚奴在线一区二区三区| 欧美午夜一区二区三区免费大片| 国产日产欧美一区| 六月婷婷色综合| 欧美精品免费视频| 一区二区三区四区中文字幕| 成人免费视频app| 欧美videossexotv100| 亚洲a一区二区| 欧美午夜精品理论片a级按摩| 国产精品久久久久三级| 国产剧情一区在线| 精品国产伦一区二区三区观看体验| 亚洲综合色噜噜狠狠| 99免费精品视频| 中文字幕中文乱码欧美一区二区 | 日韩经典一区二区| 欧美性xxxxxxxx| 亚洲综合精品久久| 色综合视频在线观看| 国产精品麻豆视频| 成人午夜私人影院| 欧美激情综合五月色丁香小说| 韩日精品视频一区| 精品国产sm最大网站免费看| 久久国产人妖系列| 精品国产91久久久久久久妲己| 另类调教123区| 精品乱码亚洲一区二区不卡| 麻豆极品一区二区三区|