#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <winsock2.h>

void ErrorHandling(char *message);

int main(int argc, char* argv[])
{
WSADATA wsaData;
SOCKET hSocket;
char message[30];
int strLen;
SOCKADDR_IN servAddr;

if (argc!=3){
printf("Usage : %s <IP><port> \n", argv[0]);
exit(1);
}

//Load WinSocket 2.2 DLL
if(WSAStartup(MAKEWORD(2,2), &wsaData) !=0)
ErrorHandling ("WSAStartup() error!");

//서버 접속을 위한 소켓 생성
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(argv[1]);
servAddr.sin_port = htons(atoi(argv[2]));

if(connect(hSocket, (SOCKADDR*)&servAddr, sizeof(servAddr))==SOCKET_ERROR)
ErrorHandling("connect() error!");
//데이터 수신
strLen = recv(hSocket, message, sizeof(message)-1,0);
if(strLen == -1)
ErrorHandling("read() error!");
message[strLen] = 0;
printf("Message from server: %s \n", message);

closesocket(hSocket); //연결 종료
WSACleanup();
return 0;
}

void ErrorHandling(char *message)
{
fputs(message, stderr);
fputc('\n', stderr);
exit(1);
}
2009/09/09 11:13 2009/09/09 11:13

Trackback Address >> http://starwars.hosting.paran.com/trackback/31

[로그인][오픈아이디란?]