TCP連線伺服器的網遊客戶端(c 實現)

2021-10-10 16:52:19 字數 2078 閱讀 6076

在win10下啟用 telnet client

開啟乙個cmd命令視窗,輸入命令telnet輸入set localecho,開啟本地回顯

連線遊戲伺服器,命令open 10.1.230.178 3900(據老師說校園網連線太不穩定了,所以這個ip變了幾次)

將看見一些文字提示,叫你取乙個玩家英文名稱,中文名稱(這裡可能亂碼),設定密碼、性別角色、戰鬥力等引數。設定好之後,就進入乙個文本版的網遊,叫做金庸夢。

這是20年前與bbs一起風靡大學校園的一款mud遊戲。

此遊戲採用tcp協議,支援多使用者連線。(看得出來老師很懷舊,哈哈)

老師給了個框架,我直接就在他給的那個上面改了改

1、建立連線

//分別建立 tcpclient 和 networkstream 的物件

tcpclient tcpclient;

networkstream stream;

//例項化

tcpclient =

newtcpclient()

;//向指定的ip位址的伺服器發出連線請求

tcpclient.

connect

("10.160.52.106"

,3900

);

2、接收訊息

byte

data =

newbyte

[1024];

int receive = stream.

read

(data,0,

1024);

string message = encoding.default.

getstring

(data,

0, receive)

;richtextbox1.text = message;

3、傳送訊息

byte

sendbytes = encoding.default.

getbytes

(textbox1.text+

"\n");

stream.

send

(sendbytes)

;//清除顯示框之前的內容

textbox1.

clear()

;//將游標聚焦到輸入框

textbox1.

focus()

;

4、切換

把放到工程檔案的bin目錄裡,然後在form1.resx裡新增進來,分別編號0到5

//更改遊戲背景圖

頭回嘗試了這樣的網遊客戶端,感覺還挺新奇,之前做altium designer畫板子的作業花了好多時間,所以這次做的比較晚,看了其他同學做好了的,自己再搞就沒走什麼彎路。主要是要學會tcp建立連線、收發資料。

TCP的多個客戶端連線伺服器

通過父子程序實現tcp的多個客戶端連線伺服器 tcp sever fork.c include include include include include include include define port 3333 int main 伺服器填充sockaddr結構 bzero server...

C 伺服器怎麼知道客戶端斷開TCP連線

因為 1 正常情況下 客戶端斷開會產生錯誤,在連線裡面能catch到 把套接字操作放到try catch裡,如果一端斷開了,另一端還繼續進行套接字操作就會抱錯。你捕捉到就說明另一端完蛋了,進行你要的處理就好了啊 2 但是如果客戶端是突然斷電等情況下,不會產生這個錯誤 連線會一直等待下去。1 定義乙個...

TCP伺服器 客戶端程式

server tcpserver.cpp檔案 include common initsock.h include cinitsock initsock 初始化winsock庫 int main 填充sockaddr in結構 sockaddr in sin sin.sin family af ine...