Busan IT/WinAPI2015. 11. 30. 22:27

==================================Outline====================================

winsock을 사용한 서버/클라이언트 프로그램

----------------------------------------------------------------------------

 

소켓의 개념은 어느 운영체제에서나 같다. MFC에서도 Win32의 소켓을 사용하여 네트워크 환경을 만든다.


winsock을 사용한 서버 클라이언트 프로그램을 만들어보자. console 환경에서 winsock을 사용하기 위해서 library를 추가해주어야 한다.

 

#pragma comment(lib, "ws2_32.lib")

 

winsock을 사용해주기 위해서는 WSAStartup 함수를 사용해야 한다.

 


첫번째 인자인 버젼의 정보를 넣을 때 매크로 'MAKEWORD' 를 사용한다. 상위 바이트와 하위 바이트에 버전을 입력한다. 

사용 후에는 반드시 WSACleanup 함수를 사용하여 종료해준다.


void WSACleanup(void)

 

socket함수로 소켓을 생성해준다.

 

 

소켓 생성 제대롤 생성 되었는지 에러처리를 통하여 소켓을 걸러낸 후 bind함수를 위해 sockaddr구조체를 설정해준다. AF_INET을 사용할 경우에는 sockaddr_in구조체이다.


 

// in_addr의 인자는 하나뿐임으로 구조체인 것을 개의치 않고 주소를 바로 넣어주면 된다.

 


 

소켓 함수를 사용하여 서버와 네트워크를 프로그램은 이미 작성해 보았음으로 joinc의 예제 소스를 참조하여 프로그램을 작성해보자.

 

  


소스에 주석으로 설명해 놓았으니 참고한다.


/*** 소스 ***/



client.c


go.bat


server.c



 

반응형

'Busan IT > WinAPI' 카테고리의 다른 글

멀티쓰레드  (0) 2015.12.02
winsock 채팅 프로그램  (0) 2015.12.01
히스토그램 , 알파값  (0) 2015.11.25
WIN32API로 BMP뷰어  (0) 2015.11.22
20151118 윤재희 #5. 그래픽 & 게임  (0) 2015.11.18
Posted by newind2000