淺析C#中的套接字編程(6)

淺析C#中的套接字編程(6)
作者: 王凱明   www.ASPCool.com 時間:2002-4-10 21:28:16  

     通過以上的一些函數,客戶端程序之間就可以進行自由地聊天了,各個用戶之間還可以互相發送悄悄話。所以程序已經實現了聊天室的基本功能了,不過最後各個用戶還要正常地退出,那就要用到QuitChat()函數了。該函數的具體實現如下:
  
  
  private void QuitChat()
  
  
  {
  
  
  if(connected)
  
  
  {
  
  
  try
  
  
  {
  
  
  string command = "GONE|" + clientname;
  
  
  Byte[] outbytes = System.Text.Encoding.ASCII.GetBytes(command.ToCharArray());
  
  
  ns.Write(outbytes,0,outbytes.Length);
  
  
  clientsocket.Close();
  
  
  }
  
  
  catch(Exception)
  
  
  {
  
  
  }
  
  
  }
  
  
  if(logging)
  
  
  logwriter.Close();
  
  
  if(receive != null && receive.IsAlive)
  
  
  receive.Abort();
  
  
  this.Text = "客戶端";
  
  
  }
  
  
  到此爲止,客戶端程序的主要部分都已經介紹完畢。還有一些按鈕控件的消息處理函數可以參見源代碼。同時,程序中還有一個聊天記錄功能,該功能和現在流行的聊天軟件的記錄功能類似。不過限於篇幅,在這裏就不一一介紹了,有興趣的讀者可以研究一下本文後面的源代碼。
  
  
  這樣,客戶端程序就完成了。程序運行圖示如下:
  
  
  
  
  總結:
  
  
  本文向大家初步介紹了套接字的基本概念和實現套接字編程的基本原理,還通過一個很好的實例向大家展示了在C#下進行套接字編程的實現方法和一些編程技巧。從中,我們不難發現運用C#進行套接字編程乃至網絡編程有許多優越之處。實例程序實現的思路清晰明瞭而且通俗易懂,是一個相當不錯的例子,希望各位能好好研讀。同時還希望大家能進一步完善該程序,使之功能更強大、界面更友好。最後還要註明的是:該實例程序是在VS.net正式版下編譯、運行成功的,如果你還是Beta版的話可能會有一些差別。
  
  下載代碼:
  http://www.aspcool.com/download/display.asp?Did=330
發佈了36 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章