처음 공부할때 만들어봤던건데.. 지금보면 굉장히 창피함...ㅋㅋ


네트워크 프로그래밍의 기초적인 소켓 연결에 대한 내용을 적어보겠다.












기본적인 소켓 연결에 필요한 모든 함수들을 알아보았고,

TCP서버, TCP클라이언트의 간단한 예제 소스는 따로 올리도록 하겠습니다 .


( [Programing/Example Code] - TCP 서버, 클라이언트 연결 예제 )






잘못된 내용은 거침없이 지적해주세요 .

'Programing > Win32API' 카테고리의 다른 글

바이트 순서 ( 엔디언 표기법 )  (0) 2015.11.18
CreateProcess , CreateThread  (0) 2015.09.26
프로세스와 쓰레드  (0) 2015.09.26
대화상자 모달, 모달리스  (0) 2015.09.19
WinAPI 의 CALLBACK 함수  (0) 2015.09.12

Win32API 를 공부하다 보면 CALLBACK 이란 예약어를 자주 사용하게 된다 .


CALLBACK 이란 단어의 원형을 찾아보자 .



minwindef.h 라는 파일안에 위와 같이 정의된 내용이 보인다 .




그럼 __stdcall 이란 무엇일까 ?


함수 호츌 규약 중 하나의 형식인데 __stdcall, __cdecl, __fastcall ... 등등이 존재한다.


함수 호츌 규약은 나중에 따로 다뤄보기로 하고 , WinAPI 에서 사용하는 __stdcall 에 대해 알아보도록 하자 .





C언어를 공부했던 사람이라면 콘솔에서의 프로그램 흐름을 이해할 것이다 .


프로그램의 시작을 하는곳은 main 함수이고 이 main함수가 리턴되는 순간 프로그램은 종료하게 된다.





두개의 인자를 받아 더한값을 반환하는 사용자 함수가 있다 해보자.



내가 필요할 경우에 add() 함수를 호출하여 데이터 처리를 하게 된다.


이게 일반적인 __cdecl 방식의 함수 호출방법이다.


그럼 우리가 하게될 CALLBACK 혹은 WINAPI , WINENTRY 라 정의되어 있는 ( __stdcall ) 함수는 어떻게 다른가 ?




윈도우에선 모든 이벤트마다 메세지가 발생하게 되는데, 이때 OS 에서 호출하는 함수를 콜백 함수라 한다.


즉, 콜백 함수의 경우는 우리가 필요할때 함수를 호출하는게 아니라 

어떠한 이벤트가 발생시 운영체제에게 호출당하는 함수를 말하는 것이다.





잘못된 내용은 거침없이 지적 부탁드립니다 .

'Programing > Win32API' 카테고리의 다른 글

바이트 순서 ( 엔디언 표기법 )  (0) 2015.11.18
CreateProcess , CreateThread  (0) 2015.09.26
프로세스와 쓰레드  (0) 2015.09.26
대화상자 모달, 모달리스  (0) 2015.09.19
윈도우 기반의 TCP 소켓 통신 ( C )  (0) 2015.09.12

+ Recent posts