본문 바로가기
VC++ PostMessage 예제, mfc 화면 갱신 깜박임 사용법 VC++ PostMessage 예제, mfc 화면 갱신 깜박임 사용법 PostMessage 사용 시 주의 PostMessage 는 SendMessage 와 달리 프로그램이 메시지를 빈번히 처리해서 메시지큐가 full인 경우에는 처리되지 않는다. 따라서 중요한 처리의 경우는 리턴값을 확인해야 한다. 화면 갱신 시 깜박임 없애기 클라이언트 영역에 그래픽 작업이나 컨트롤을 올릴 때 화면이 깜박이는 문제를 없에려면, (1) Memory DC를 사용한다.화면에 직접 그릴 경우는 배경 칠하고 위에 다른 것을 그리면 이것이 눈에 띄게 된다. CreateCompatibleDC를 이용해 메모리 DC에 모두 그려준 다음 BitBlt를 이용해 한꺼번에 화면에 복사해 주면 깜박임이 없어진다. (2) OnEraseBkgnd (.. 2018. 9. 21.
VC++ MFC 디버그 에러와 메모리 누수 해결 프로그래밍 팁 3개 VC++ MFC 디버그 에러와 메모리 누수 해결 프로그래밍 팁 3개 VC++에서 스레드를 사용하는 프로그램. 디버그 시 OS가 멈추는 현상 (디버그 에러) XP에서 스레드를 사용하는 프로그램을 디버깅하다 보면 자주 OS가 멈춰버려서 리부팅까지 해야 하는 상황이 자주 발생합니다. 이 때문에 98이나 2000 에서 디버깅하기도 했는데 VC++ 6.0과 XP가 충돌하는 것으로도 의심했었지만 VC++2005 에서도 같은 문제가 생긴다고 합니다. 그래서 검색을 해보니 원인은 IME 쪽 버그라고 합니다. 그래서 디버그 에러도 발생하는 것이죠. 1. 제어판 --> 국가 및 언어 옵션 --> 언어 탭 --> 자세히...2. --> 고급 --> 고급 텍스트 서비스 사용 안 함 - 체크 후 리부팅 VC++의 메모리 누수 .. 2018. 7. 14.
VC++ 개발자도 잘 몰랐던 코딩 팁 9가지 (좋은 코드, 가독성 상승 습관) VC++ 개발자도 잘 몰랐던 코딩 팁 9가지 (좋은 코드, 가독성 상승 습관) static 라이브러리 작성 시 주의사항 static 라이브러리를 작성해 application에 링크하려다 보면 LIBCD.lib 등의 링크 에러가 발생합니다. 이것은 static library 위저드와 application 위저드가 Code Generation 옵션을 서로 다르게 생성하기 때문입니다. 해결 방법Project Settings --> C/C++ --> Code Generation --> Use run-time library -->Debug Multithreaded XXX 식으로 application에 사용된 속성과 맞춰줘야 합니다. 마찬가지로 라이브러리를 사용하는 프로그램 컴파일 시 already defined... 2018. 2. 20.