#include#include #pragma comment(lib, "wsock32.lib") void main() { SOCKET s; WSADATA wsaData; SOCKADDR_IN sin; if( WSAStartup(WINSOCK_VERSION, &wsaData) != 0 ){ printf("WSAStartup 실패, 에러코드 = %d\n", WSAGetLastError()); return; } puts(wsaData.szDescription); puts(wsaData.szSystemStatus); s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if(s==INVALID_SOCKET){ printf("소켓 생성 실패, 에러코드 : %d\n", WSAGetLastError()); WSACleanup(); return; } puts("You can use winsock!"); sin.sin_family = AF_INET; sin.sin_addr.s_addr = inet_addr("127.0.0.1"); sin.sin_port = htons(21); if(connect(s, (struct sockaddr*)&sin, sizeof(sin)) != 0){ printf("접속 실패, 에러코드 = %u\n", WSAGetLastError()); closesocket(s); WSACleanup(); } if(closesocket(s)!=0){ printf("소켓 제거 실패, 에러코드 = %u\n", WSAGetLastError()); WSACleanup(); return; } if(WSACleanup() != 0){ printf("WSACleanup 실패, 에러코드 = %u\n", WSAGetLastError()); return; } puts("127.0.0.1의 21번 포트에 접속을 성공하였습니다."); }
Tip&Skill