MFC 建立socket連線伺服器網路程式設計

2021-09-28 19:22:06 字數 1318 閱讀 1738

mfc不像控制台在main函式裡寫**,先新增控制項,控制項新增事件函式,然後再事件函式裡寫**,如果伺服器未開啟,就去連線,會卡住。測試成功與否可以用messagebox(_t("***"));

//建立連線

char sendbuf[512];

cstring sendstr;

word wversion;

wsadata wsadata;

int err;

wversion = makeword(1, 1);

err = wsastartup(wversion, &wsadata);

if (err != 0)

if (lobyte(wsadata.wversion) != 1 || hibyte(wsadata.wversion) != 1)

// 建立tcp套接字

socket sockcli = socket(af_inet, sock_stream, 0);

sockaddr_in addrsrv;

addrsrv.sin_addr.s_un.s_addr = inet_addr("192.168.0.106");//伺服器位址127.0.0.1是本機

addrsrv.sin_family = af_inet;

addrsrv.sin_port = htons(6000);//埠

//向伺服器發起連線請求

connect(sockcli, (sockaddr*)& addrsrv, sizeof(sockaddr));

// 傳送資料 

sendstr = m_machinecode;

char *buff;

buff=sendstr.getbuffer(sendstr.getlength());

sendstr.releasebuffer();

//sprintf_s(sendbuf, sizeof(sendstr), (const char*)&sendstr);//字串轉字元陣列

send(sockcli, buff, strlen(sendstr)+1, 0);//傳送

接收資料 

char recvbuf[24]; //time_t start; time(&start);

recv(sockcli, recvbuf, sizeof(recvbuf), 0);

// 關閉套接字 

closesocket(sockcli);

wsacleanup();

shell建立socket連線

udp dev udp host port tcp dev tcp host port exec 8 dev udp 10.0.2.15 12345 就相當於建立乙個udp socket。傳送報文 echo 8 使用tcpdump抓包 00 48 18.291124 ip 10.0.2.15.403...

socket連線建立步驟

1 客戶端socket 首先呼叫socket類的建構函式,以伺服器的指定的ip位址或指定的主機名和指定的埠號為引數,建立乙個socket流,在建立socket流的過程中包含了向伺服器請求建立通訊連線的過程實現。建立socket 客戶端物件 socket s new socket 127.0.0.1 ...

PHP建立socket服務

php可以建立socket服務。先熟悉幾個php網路方面的函式,操作手冊位址 對上邊講解的瀏覽器請求伺服器的socket做個 例子,加深下理解 remote ip 61.135.169.125 remote port 80 socket localsocket remote ip,remote po...