當前位置:編程學習大全網 - 編程軟體 - c++csocket編程 5種模式

c++csocket編程 5種模式

1. 構造CSocket對象,如以下的形式:

CSocket Serversocket;

2. 利用CSocket對象的Create()函數創建Windows Socket,Create()函數會調用Bind()函數將此Socket綁定到指定的地址上,其原型為:

BOOL Create (UINT nSocketPort = 0, int nSocketType = SOCK_STREAM, LPCTSTR lpszSocketAddress = NULL);

其中nSocketPort參數指定通信連接的端口號,端口號可以任意指定,但最好不要使用系統默認的壹些端口號,例如21是FTP文件傳輸使用的端口號;

3. Socket創建完畢之後,在服務器端進行監聽客戶的連接請求,使用如下的代碼:

ServerSocket.Listen();

緊接著對於客戶端而言,將會調用Connect()函數向服務器發送連接請求,而對於服務器而言,則會調用Accept()函數對客戶端發送過來的請求連接進行接受和處理,Accept()函數可以創建壹個和監聽Socket相同的連接Socket來處理客戶的請求,二原來的Socket仍然處於監聽狀態,使用的形式如下。

客戶端:

ClientSocket.Connect(服務器的地址,服務器的端口號);

服務器端:

CSocket ReceiveSocket;

ServerSocket.Accept(連接Socket,客戶的地址結構,客戶地址結構的長度)

4. 對於數據流服務器類型而言,服務器和客戶各自通過調用函數來完成數據的發送和接受,使用如下的語句:

ServerReceive.Receive(緩沖區,緩沖區的長度,接受標誌位);

Client.Send(緩沖區,緩沖區的長度,發送標誌位);

5. 在客戶端與服務器端的數據傳輸完成之後,調用下述語句,釋放Socket所占有的資源。

ServerSocket.Close();

ReceiveSocket.Close();

ClientSocket.Close();

  • 上一篇:VB.net 中如何判斷壹個圓和壹個矩形相交
  • 下一篇:數控割床怎樣編程
  • copyright 2024編程學習大全網