C 窗體應用 socket通訊(一)

2021-10-04 08:40:19 字數 2146 閱讀 3059

這裡我寫的是服務端的**:直接貼上我的介面

下面貼上完整**:

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.net;

using system.net.sockets;

using system.text;

using system.threading;

using system.windows.forms;

namespace csharp_plc_socket

private

void

btn_start_click

(object sender,

eventargs e)

socket socketclient;

//傳送資料介面

void

accept

(object obj)

catch}}

void

receive

(object obj)

//執行緒傳遞物件只能是object型別的

//string str =encoding.utf8.getstring(msg, 0, msglen);

//顯示接收到的資料

send_by_plc.text =

(point.address +

"【"+ point.port +

"】:"

+ encoding.utf8.

getstring

(msg,

0, msglen));

console.

writeline

(point.address +

"【"+ point.port +

"】:"

+ encoding.utf8.

getstring

(msg,

0, msglen));

//反饋給client端

socketclient.

send

(encoding.utf8.

getbytes

(encoding.utf8.

getstring

(msg,

0, msglen)

+",got it"))

;}catch}}

private

void

form1_load

(object sender,

eventargs e)

}}

關於socket的**沒有什麼需要注意的地方,套路感覺都是一樣的,只要理清楚思路就可以了。

值得注意的是在這裡我需要在子執行緒上更新控制項,所以在最後加上了一段比較重要的**(再記一次,寫的時候忘記了)

private

void

form1_load

(object sender,

eventargs e)

this

.load +

=new

system.eventhandler

(this

.form1_load)

;

原理的話就是委託,很多博文都有寫

最後使用sockettool進行了測試,連線伺服器,連線客戶端,傳送資料都沒有問題。

就是不知道為什麼漢子傳過去變成亂碼了,如下圖:

emmmmm花了好多天才交了差,不得不說在家裡的效率真是太低了。簡單問題複雜化,我真是佩服我自己,哈哈哈。

C 後台程式設計一 socket通訊

最近要寫一些計算機網路的一些實驗,所以最近寫一些linux平台下的後台程式設計,使用c 語言編寫。沒有了windows下的ide,所以用的是記事本編寫cpp檔案,主要寫了兩個cpp檔案,乙個server,另乙個client,先上 有時間再講解 的意思。include include include ...

C 實現Socket通訊

using system using system.collections.generic using system.linq using system.text using system.net using system.net.sockets class program static socke...

C 使用Socket通訊

socket包括ip位址和埠號兩部分,程式通過socket來通訊,socket相當於作業系統的乙個元件。socket作為程序之間通訊機制,通常也稱作 套接字 用於描述ip位址和埠號,是乙個通訊鏈的控制代碼。注意 socket不僅可以在兩台電腦之間通訊,還可以在同一臺電腦上的兩個程式間通訊。socke...