본문 바로가기

My Study

MDI 다른 형식의 Child 만들기 MDI 의 꿈을 버리지 못하고 몇 개월째 해야지~하면서 찾아만 다녔던 부분이다.MDI 에서 기본View는 내가 지정을 할 수 있지만 다른 형식의 View, 그러니까 예를 들어서 일반 View가 기본인데 FormView가 필요하다던지 그 반대가 되던지 아니면 머..스크롤 뷰라던지 등 기본과 다른 View를 사용해서 Child를 띄우는 방법이다. 솔직히 그냥 DoModel 이나 Modeless 로 띄워도 되긴 하지만 일단 간지가 나지 않는다 -_- MDI 의 최대 장점은 독립적인 Frame 구조이기 때문이다. 독립적인 Frame이 지원이 되는데 왜 굳이 저렇게 쓴단 말인가? 그럴빠엔 SDI로 설계를 하는게 더 편하다. 서론이 길었지만 매우 간단하더라 (이전엔 해도 않됐었다. 아무리 많은 포스팅을 봐도 해보면.. 더보기
구조체 정의와 동시에 초기화 일반적으로 구조체는 멤버함수를 가지지 않기 때문에 생성자라는 개념이 없다. 실제 책을 찾아봐도 이러한 내용은 다루지 않더라. 그러나 생성자가 존재는 하더만 ?! 일단 깊게 파진 못하고 잊어버릴까 싶어 우선 포스팅 바로 .... typedef struct TESTSTR{int a;int b;}TESTSTR; 보통 위와 같이 사용하여 선언시 다음과 같이 초기화 한다. TESTSTR teststr = {10,11}; 이것도 머 나쁘진 않지만 멤버변수가 많다면 이짓도 여간 힘든일이 아니다. 그리고 할때마다 memset 또는 ZeroMemory 함수를 쓰는거도 귀찬고 잊어버려 쓰레기 값이 들어가는 경우가 허다하다. 그래서 생성자 같은 함수가 있으면 편리한 것!! 젠장...있었구나... 선언시 다음과 같이 해주면 .. 더보기
이동식/HD/SD 카드등 외부 메모리 삽입/제거 이벤트 감지 USB/SD 카드 가 컴퓨터에서 인식되면 이게 이동식이든 HD 든 상관없이 시스템 콜을 받게 됩니다. MFC 에서 DefWindowProc() 함수에서 메시지가 날라오는군요. DefWindowProc 함수는 MFC 메시지 함수 입니다. #include LRESULT CMyProject::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam){ // TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다. if(message == WM_DEVICECHANGE){ UINT event = (UINT)wParam; switch(event ){ case DBT_DEVICEARRIVAL :// 이동식 디스크 삽입 SetDlgItemText(IDC_S.. 더보기
MFC Folder 통체 복사 처음에 Folder를 복사 하기 위해서 모든 폴더 내부에 있는 폴더와 파일을 스캔한 후 Path를 받아오는 방식으로 했었는데 ....함께 일하시는 수석연구원님 께서 한방에 해결하는 방법을 찾아 주셨네요 ;;;( 거의다 구현 했었는데....OTL) SHFILEOPSTRUCT 구조체를 이용하여 매우 간단하게 폴더를 복사 하는 방법입니다. 동작 옵션을 달리하면 여러 기능이 가능합니다... intCopyFolder(CString szFrom, CString szTo){ SHFILEOPSTRUCT shfo; int nRet; char* pszFrom = new char[szFrom.GetLength()+1]; char* pszTo = new char[szTo.GetLength()+1]; // EmptyDirect.. 더보기
MFC 다국어 처리 다국어처리 일반적으로 MFC에서 작업을 특별히 하지 않으면 Stringtable에는 IDS_ABOUTBOX, IDP_DOCKETS_INIT_FAILED (소켓 옵션 설정시) 이 두가지 만 등록이 되어있습니다. 기본적으로 원하는 값은 순차적으로 카운트 되며 이게 곧 ID 넘버가 됩니다. 이런저런 걸 추가한 뒤 다른 언어를 하고자 할때는 다음과 같은 작업으로 손쉽게 하면 됩니다. 일단 다국어 stringtable을 위한 리소스 dll 생성 New Project --> Win32 프로젝트 --> 응용프로그램종류 : DLL / 빈 프로젝트 체크 --> 리소스파일 추가 --> stringtable 리소스 추가 (그림은 아이콘이 선택되어 있지만 String Table로 추가) 이렇게 하면 빈 프로젝트에 딴거 없이 .. 더보기
마곡사 우정캠핑장 공주 마곡사에 있는 캠핑장이다. 요기.................(네비 찍으면 나옴...=_=...않나오면 마곡사 찍으면 바~~~로 입구에 있다는 것!) 전경이다. 뒤에 마곡천과 무대...가!!! 캠핑장 입구다...모든 글자 디자인과 마크 들을 모두 여기 사장님이 다 만드셨다고 한다. 장비는 다 빌려서...!! ㅎㅎㅎ 너무 비싼 장비들..ㅠㅠ;;아래 사진에서 보면 무대도 있는데 토요 무대라고 공연도 하고 장난 아니다. 마곡사가 있어서 설마 했는데 정말 공연 하더라.ㅋㅋㅋ 캠핑장 뒷편에 계곡이 있어서 단순히 먹기만 하는 캠핑이 아니다. 사실 다른 캠핑장 후기 보면 대부분이 걍 먹방...-_-;; 먹는거 한계가 있는데 ;;; 낮에 계곡에서 지칠때 까지 함 놀아 준다.ㅎㅎ 그리고 계곡에 고기도 잡는다. 놀다.. 더보기
MFC .map 파일과 .cod파일 분석하기 kuaaan 님 블러그는 정말 보물 창고다.-_-. 릴리즈에서 디버그의 힘든 (테스트 PC가 다를 경우)점에서 여러 유용한 방법들이 있을 줄이야.!!! (우리회사 수석연구원님도 대단하심.ㅠㅠ) VS2010 으로 작업하면서 필요없는데 생기는 이유를 모르는 파일들이 이렇게 유용할줄 몰랐다...VS2010아.............-_- map파일과 cod파일을 이용하여 여러 방면으로 디버그가 가능하다. 물론 소스단의 Debug보단 편하진 않지만 서버나 산업용 PC에서 테스트를 할 때 VS를 설치 하지 못하는 환경에서 메모리 주소만을 가지고 충분히 Debug가 가능하다. 디버거로 실행시킬 때 모든 오류가 발생해준다면 오죽이냐 좋겠냐마는 현실은 그렇지가 않아서... Debug 빌드에서는 죽지 않다가 Release.. 더보기
메모리 덤프(Memory dump) 분석하기 2 이 글은 Kuaaan님께서 정리하신 글입니다.http://kuaaan.tistory.com/214 이 포스트에서는 WinDbg를 사용해 Application 메모리 덤프 (말하자면, 유저 메모리덤프)를 분석하는 방법을 설명합니다. WinDbg를 사용해본 적이 없는 초보자를 대상으로 하는 글이며, 메모리덤프 작성하는 방법을 모르시는 분은 아래의 글을 먼저 읽어 주세요. http://kuaaan.tistory.com/213 우선, Null 포인터에 쓰기를 시도하여 Access Violation을 일으키는 샘플 프로그램을 하나 작성해 보겠습니다. view plaincopy to clipboardprint?#include "stdafx.h" #include void funcC(INT x, INT y, INT z.. 더보기
메모리 덤프(Memory dump) 분석하기 1 릴리즈후 테스트를 하는데 아침마다 프로그램이 죽어있는 현상으로 골머리를 썩히는 중...같이 일하시는 수석연구원님 께서 윈도우 이벤트 로그와 메모리 덤프 파일을 이용하는 방법을 찾아 주셨다. 아래 글을 참조하면 릴리즈 모드에서도 디버그가 어렵지 않을거 같은.-_-!! 1. "포스트모템 디버깅"과 "메모리 덤프" "포스트 모템"이라는 말은 "사후(死後)"라는 의미입니다. 사후 세계를 믿는 종교를 "포스트모템 신앙"이라고 하죠. "포스트모템 디버깅 (Post Mortem Debugging)" 이라는 말도 대략 비슷한 의미입니다. 디버거가 설치되어 있고 개발환경이 꾸며져 있는 PC에서 문제가 발생한다면야 별 걱정할 게 없겠지만... 그렇지 않다면 문제가 발생한 PC에서 "메모리 덤프"를 작성하여 분석가능한 개발.. 더보기
야마토포 야마토포〓▶天馬◀〓어린이집은 일반적인 보육과정이었을 뿐, 아동 학대는 아니라고 부인했습니다. [어린이집 원장 : 한 번에 (아이를) 안을 수가 없으니까 딱 잡아서 끌고 갈 수도 있어요. 상처가 난 것도 아닌데, 어머니가 문제 삼은 겁니다.] 부모는 어린이집 원장과 보육교사를 야마토포 학대 혐의로 경찰에 신고했고, 경찰은 CCTV 영상을 확보해, 조사에 착수했습니다. 지난 연말 국회를 통과해 오는 9월 시행되는 야마토포 아동복지법은 아동학대로 형이 확정된 사람이 10년 동안 어린이 관련 시설에 취업할 수 없도록 정했습니다. 지금 저한테는 유통기간이 지난 우유와 지나지 야마토포 우유가 있습니다. 이 우유 안에 얼마나 많은 세균이 사는지 실험을 통해 측정해보겠습니다.유통기한 전후의 세 가지 시료를 채취해 하루.. 더보기