Socket網路程式設計(2) 服務端實現

2021-09-06 12:05:31 字數 1867 閱讀 4146

中秋了,首先祝大家中秋快樂,閒著無事在家整乙個socket的聊天程式,有點仿qq介面,就是瞎折騰,不知道最後是不是能將所有功能實現。

如果你對socket不了解,請看這篇文章:

可以讓你快速對socket有個整體認識,如果你已經是socket網路程式設計高手,你可以忽略n個字,跳出本文章...

lz想實現的功能有:

基本的聊天功能。

可以傳送檔案。

可以像qq那樣傳送震動。

可以截圖,並傳送。

可以在視窗中傳送。

可以設定字型,字型顏色等功能。

先將winform的客戶端和服務端介面貼出來。山寨的我都不能忍了......

雖然不知道qq中具體實現是什麼方式的,但是按自己現有水平一步步實現每個功能,那也是非常大的挑戰,畢竟自己也是剛接觸socket網路程式設計,也只能做乙個查乙個,逼自己多動手。

這裡用的是多行textbox控制項,但是不能放,是個最大的問題。想考慮試試webbrower控制項。

服務端**:

1

using

system;

2using

system.collections.generic;

3using

system.componentmodel;

4using

system.data;

5using

system.drawing;

6using

system.linq;

7using

system.net;

8using

system.net.sockets;

9using

system.text;

10using

system.threading;

11using

system.threading.tasks;

12using

system.windows.forms;

1314

namespace

wolfy.chatserver

1524

25private

void btnsend_click(object

sender, eventargs e)

2629

30private

void btnstartservice_click(object

sender, eventargs e)

3149

private

void listenconn(object

o)50

6061}62

///63

///提示資訊輔助方法

64///

65///

66private

void showmsg(string

msg)

6770

}71 }

首先測試服務端是否開始監聽...執行命令 netstat -a -b

可見服務端已經處於監聽狀態。

測試客戶端和服務端的連線,這裡使用telnet命令格式:telnet 127.0.0.1 50000

從服務端結果可以看出多客戶端連線是成功的,並且可以看到系統為客戶端隨機分配了兩個埠:2511和2512

結語:

Socket網路程式設計(2) 服務端實現

中秋了,首先祝大家中秋快樂,閒著無事在家整乙個socket的聊天程式,有點仿qq介面,就是瞎折騰,不知道最後是不是能將所有功能實現。如果你對socket不了解,請看這篇文章 可以讓你快速對socket有個整體認識,如果你已經是socket網路程式設計高手,你可以忽略n個字,跳出本文章.lz想實現的功...

python網路程式設計 socket 服務端 客戶端

udp 修改 2018 03 20 重置了布局,增加了udp socket又稱 套接字 應用程式通常通過 套接字 向網路發出請求或者應答網路請求。網路上的兩個程式通過乙個雙向的通訊連線實現資料的交換,這個連線的一端稱為乙個socket。socket就像 線插口,只有 線插上了,才能通訊。python...

服務端socket程式

socket是一種ipc方法,本文實現乙個簡單的服務端例程,用於了解socket程式框架。socket函式用於建立套接字。bind函式用於分配ip位址和埠號。listen函式將套接字轉為可接收連線狀態。accept函式受理連線請求。如果在沒有連線的情況下呼叫該函式,則不會返回,直到有連線請求為止。c...