C++ 97

서버에서 send를 하기 위해서 선언 할 것.

.h 파일에 추가한다. // 비동기 소켓 변수이다. CAsyncSocket*m_pListenSocket; // 소켓 통신에 필요한 함수를 선언한다. void SetListenSocket(CAsyncSocket* pSocket); virtual void OnClose(int nErrorCode); virtual void OnReceive(int nErrorCode); .cpp 파일에 추가한다. // 생성자에 추가한다. 헤더파일에 선언한 비동기 소켓을 초기화 한다. m_pListenSocket = NULL; // 소멸자 밑에 다가 멤버변수를 추가한다. // CClientSocket member functions void CClientSocket::SetListenSocket(CAsyncSocket* pSoc..

C++/소켓통신 2011.06.03

메인 윈도우의 DC를 가져와서 출력하는 방법

CCommonDialog *pMain = (CCommonDialog*)AfxGetMainWnd(); // 메인 윈도우 변수를 초기화 한다. CDC *cdc; // 그려주기 위해서 CDC를 이용한다. // TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다. CFontDialog dlg; CCommonDialog *pMain = (CCommonDialog*)AfxGetMainWnd(); CDC *cdc; if(dlg.DoModal() == IDOK){ //CClientDC dc(this); CRect rect; pMain->GetClientRect(&rect); cdc = pMain->GetDC(); cdc->SelectStockObject(WHITE_PEN); cdc->SelectStockObject..

C++/summary 2011.06.02

MFC - MySQL 연동하는 법 정리

연동시에 필요한 함수들 정리 mysql_init(&mysql); // 연동의 초기화를 담당한다. mysql_real_connect(&mysql, DB_ADDRESS, DB_ID, DB_PASS, DB_NAME ,3306,0,0) // 여기서 부터 실질적으로 연동을 한다. mysql_query(&mysql,"set names euckr"); // 쿼리를 보낸다. m_res = mysql_store_result(&mysql) // 결과를 저장한다. row = mysql_fetch_row(m_res) // row 에 값을 담아온다. mysql_fetch_array() // row 에 row[id] 이런식으로 인덱스를 이용할 수 있다. mysql_num_rows // 레코드의 총 갯수를 파악한다. mysql_n..

C++/Source 2011.05.20

소켓 프로그래밍 주의점

출처 : http://ssb777.blogspot.com/2009/06/mfc.html [MFC 소켓 프로그래밍시의 일반적인 주의점] *) CSocket을 가능하면(절대라고 표현해도 될 정도죠) 사용하지 마세요. - CSocket을 이용하여 프로그램 하시는 분이 있다면 존경받아 마땅한 분이죠... 왜냐면 CSocket은 Blocked Call이기 때문에 제대로 돌아가려면 Thread를 이용한 코딩이 되어야 하는데 거의 웬만한 경우에 배보다 배꼽이 크게 만듭니다... 옛날에는 유닉스 기반한 Telnet서버 등에서 이런 식의 Blocked Call을 Thread와 같이 사용했는데 실제적으론 문제가 많습니다. 가장 큰 문제는 시스템 리소스를 무지하게 잡아먹는다는 거죠 메모리 사용보다 가장 큰 문제는 Threa..

C++/소켓통신 2011.05.16

MFC에서 소켓을 이용한 파일전송기 만들기(5장-업그레이드버전)

출처 : 데브피아 - 최훈익 님의 강좌 http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNo=20&no=1558&ref=668 이제 5장이 정리되어 올리게 된 것을 매우 기쁘게 생각합니다.. 글 올릴려고 데브피아 왔다가 아래의 몇몇 글을 읽고 저는 매우 분개하였습니다. 이 글을 작성하는 데 시간이 얼마나 걸릴 것 같습니까? 다 강좌를 시작한 제 잘못이지 요. 일단은 저질러 놓은 일은 책임을 지겠습니다마는, 정말 힘빠지는 글을 보고야 말 았습니다.(허접이는 그 양반에게 공개적인 사과를 강력히 요구한당!!) ------------------------------------------------------ 제5장 파일전송기 - 그 두번째 버전..

C++/소켓통신 2011.05.16

MFC에서 소켓을 이용한 파일전송기 만들기(4장-허접버전스타트)

출처 : 데브피아 - 최훈익 님의 강좌 http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNo=20&no=1455&ref=653 이제 4장이 정리되어 올립니다. 4장에서는 가장 원초적인 모습의 파일전송기를 만들 어 보게 됩니다. 예제소스를 첨부하여 올렸습니다. 많은 분 들이 소스를 달라고 요청들을 하셔서... 물론 이해는 하지만, 전 강좌를 만 드는 것 외에도 할일이 있답니다. 지금은 거의 노이로제에 걸릴 지경입니다. 마음이 급하시더라도 강좌의 단계를 따라 기다려 주시면 정말 감사하겠습니다. ------------------------------------------ 제4장 파일전송기-그 첫번째 버전 ---------------------..

C++/소켓통신 2011.05.16

MFC에서 소켓을 이용한 파일전송기 만들기(3장-멀티스레딩)

출처 : 데브피아 - 최훈익 님의 강좌 http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNo=20&no=1434&ref=644 여러분! 드디어 2장을 탈출해 3장을 올리게 되었습니다. 3장도 작성해놓고 다시 읽어 보니 역시나 허접하지만, 이번장을 마치게 되어 아마도 다음 장부터는 본론에 들어갈 수 있을 것 같습니다. 우리 다같이 열심히 공부해 봅시다.. 이런 이야기를 하면.. 아마도 자랑인거 같아서 좀 그렇지만, 저에게 팬레터(쪽지)를 보내 주시는 분들이 계십니다. 감사합니다. 여러분들의 격려의 메시지들을 보면 저도 힘이 납니다. 보다 알찬 강좌가 되도록 더욱 노력하겠습니다. 부족하다는 것을 잘 알 고 있지만, 그래도 무엇이든 열심히 노..

C++/소켓통신 2011.05.16

MFC에서 소켓을 이용한 파일전송기 만들기(2장-MFC소켓클래스)

출처 : 데브피아 - 최훈익 님의 강좌 http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNo=20&no=1409&ref=638 헉....오늘아침에 제 강좌의 조회수를 보고 전 놀라고 말았습니다. 이 분야에 관심들이 정말 대단하군요... 더 공부한 뒤에 시작할걸... 허접이는 클났군.... 이마에 땀이 나더군요.... 음.... 부디 여러분을 실망시키지 말아야 할텐데... 하늘이여 내게 힘을 주소서.. 다시 또 대강 2장이 정리되었습니다. 원래는 이번 장에서 더 많은 이야기를 할려고 했지만.. 천시(퇴근시간)와 지리(사무실)와 인화(눈치보임)가 도와주질 않는군요.. 타이핑하느라 손도 넘 아픕니다. 죄성.. ------------------..

C++/소켓통신 2011.05.16

MFC에서 소켓을 이용한 파일 전송기 만들기(1장--개념잡기)

쩌업... 그럭저럭 1장이 정리되어 올립니다... 사실 1장은 없어도 되겠지만, 초급자 분들을 위해서 개념을 잡도록 정리해 보았습니다. 맨 뒤에는 성미 급하신 분들을 위해 서 간략한 코드를 추가해 두었습니다. ------------------------------------------------------------------------------- ----------------------------------------------- 제1장 윈속, 소켓, 주소, 포트 ----------------------------------------------- 이 강좌의 본론을 이야기 하기 전에, 재미없는 몇가지 사항에 대해 이야기 해야만 할 것 같다. 윈속을 이용한 네트워킹 프로그래밍이나 인터넷 프로그래밍에 관..

C++/소켓통신 2011.05.16

MFC에서 소켓을 이용한 파일전송기 만들기

우왕.. 제목을 써 놓고 보니 그럴듯 하군여.. 안녕들 하세여.. 제목 그대로 소켓을 이용한 네트워크 환경에서 서로다른 컴퓨터간에 파일을 전송할 수 있는 애플리케이션 만드는 방법에 대해서 강좌를 올려볼까 합니다. 여기 저기 돌아 다녀 봐도 소켓관련해서는 간단한 메시지를 주고받는 채팅 프로그램에 대해서는 많이 들 이야기 하고 있는데, 파일전송과 같이 큰 바이너리 데이터를 전송하는 것에 대해서 는 자료가 별로 없는 것 같아서 허접하지만 제가 함 해볼려고 합니다. 제목에서 알 수 있듯이 개발환경은 MFC에서 하기 때문에 MFC클래스들 만으로 기능을 구현할 것이며, 이 강좌에서는 API함수에 대해서는 별로 이야기 되지는 않을 것입니 다. 그런데, 일반적으로 MFC는 API로만 코딩된 애플리케이션에 비해 무겁다는..

C++/소켓통신 2011.05.16