프로그래밍/Windows
Windows Socket Client
즉흥
2016. 9. 4. 22:31
728x90
반응형
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | #include <stdio.h> #include <stdlib.h> #include <winsock2.h> #pragma comment(lib, "ws2_32.lib") void ErrorHandling(char* message); int main(int argc, char* argv[]) { WSADATA wsaData; SOCKET hSocket; SOCKADDR_IN servAddr; char IPaddr[52]; int port; char msg[1024]; int len; if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) ErrorHandling("WSAStartup() errer!"); hSocket = socket(PF_INET, SOCK_STREAM, 0); if (hSocket == INVALID_SOCKET) ErrorHandling("hSocketet() error!"); memset(&servAddr, 0, sizeof(servAddr)); servAddr.sin_family = AF_INET; servAddr.sin_addr.s_addr = inet_addr(IPaddr); servAddr.sin_port = htons(port); if (connect(hSocket, (SOCKADDR*)&servAddr, sizeof(servAddr)) == SOCKET_ERROR) ErrorHandling("connect() error!"); len = recv(hSocket, msg, sizeof(msg) - 1, 0); if (len == -1) ErrorHandling("read() error!"); printf("recv : %s\n", msg); len = send(hSocket, msg, sizeof(msg) - 1, 0); if (len == -1) ErrorHandling("read() error!"); printf("send : %s\n", msg); closesocket(hSocket); WSACleanup(); return 0; } void ErrorHandling(char* message) { puts(message); exit(1); } | cs |
728x90
반응형