Nano Blog - 오병우

이 에러도 최신 업데이트로 해결되었으리라 믿습니다. 최신 업데이트 설치를 생활화합시다.


비정기적으로 resource.h 파일에 한자가 잔뜩 들어가 있어서 에러가 발생합니다.


파일-솔루션 닫기 해주시고 다시 열어서 리소스 뷰에서 버튼 같은 것 하나 넣어주신 후 빌드하시면 resource.h를 덮어쓰겠냐고 물어 봅니다. 

이 때 "예" 해주시면 에러가 해결됩니다. 

아까 괜히 넣었던 버튼 같은 것을 삭제해 주시고 다시 빌드 하시면 에러를 해결할 수 있습니다.

Visual Studio 2017 사용시 최신 버전으로 업데이트를 하시면 에러가 많이 줄어드니 반드시 업데이트 하시고 사용하시기를 권장합니다.


대화 상자 기반 프로젝트를 생성한 뒤에 리소스 뷰에서 컨트롤을 추가하고 빌드하면 "file not found" 에러가 발생합니다.

이 떄에는 다이얼로그 GUI 편집 화면을 닫고, 솔루션 탐색기에서 .rc 파일에서 오른쪽 버튼을 눌러서 "코드 보기"를 선택합니다.


소스 코드에서 48라인에 "언어"라고 한글로 되어 있는 것을 "Language"로 변경하고 저장하신 뒤에 파일을 닫고, 리소스 뷰에서 작업하시면 에러가 발생하지 않습니다.


MFC 개발 환경은 VS Community 버전에서 자동으로 설치되지 않습니다. 

"새 프로젝트 만들기..."에서 " Visual Studio 설치 관리자 열기"를 눌러서 "C++를 사용한 데스크톱 개발"을 누르고 MFC 개발 환경을 설치하시기 바랍니다.


파일-새로 만들기-프로젝트 메뉴에서 Visual C++에서 MFC 응용 프로그램을 선택하고 확인 버튼을 누릅니다.


응용 프로그램 종류에서 "단일 문서" 선택하고 프로젝트 스타일을 "MFC 표준" 선택합니다.


원래 이렇게 하면 단일 문서 생성되어야 하는데, Visual Studio 스타일의 프로젝트가 생성됩니다. ㅠㅠ


해결 방법은 "고급 기능"에 가서 "탐색기 도킹 창", "출력 도킹 창", "속성 도킹 창"을 체크 해제합니다.


그리고, 마침을 눌러야 합니다. (다음을 누른뒤에 마침을 누르면 마찬가지로 Visual Studio 스타일의 프로젝트가 생성됩니다.)


4개(정보 다이얼로그까지 치면 5개)의 클래스로 구성된 깔끔한 단일 문서 프로젝트를 만들 수 있습니다.



솔루션 뷰 - [프로젝트명].rc 파일 더블 클릭

String Table - String Table - IDR_MAINFRAME


  <windowTitle>\n<docName>\n<fileNewName>\n

                    <filterName>\n <filterExt>\n<regFileTypeID>\n

                    <regFileTypeName>\n <filterMacExt(filterWinExt)>\n

                    <filterMacName(filterWinName)>


출처: http://support.microsoft.com/kb/129095/ko


Visual Studio 2013 기준으로 다음 위치에 구현 소스 코드 있음 (다른 버전은 12.0 부분 변경)


C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\src\mfc


찾으려던 Polygon은 Win32 API에 있어서 실패...

화면에는 컬러로 나오는데 프린트하니 줄번호만 파란색으로 나오고 나머지는 검은색이어서 찾아 보았더니 방법이 있었다.

1. 도구 - 확장 관리자

2. 검색창에 Color Printing 검색

3. 설치

 

따로 다운로드 받을 수도 있는 듯..

http://visualstudiogallery.msdn.microsoft.com/00ec88c2-1553-47d2-8170-3c5baa0c6e44/

 

Known Issues에도 나와 있듯이, 설치한 뒤에 줄번호 프린트 체크박스가 안보인다. 


또 찾아보니 해결 방법이 써있어서 그대로 따라 했다.


도구 - 옵션 - 텍스트 편집기 - 모든 언어 - 줄번호 (체크박스 선택)


성공!!!

 

CDC에서 상속 받아서 CMemDC 만들어서 사용하는 방법


http://www.codeproject.com/Articles/33/Flicker-Free-Drawing-In-MFC