윤 홍 란 hryun@sookmyung.ac.kr MFC 기초 윤 홍 란 hryun@sookmyung.ac.kr.

Slides:



Advertisements
Similar presentations
메시지 처리의 기본 개념 메시지 발생된 이벤트의 종류와 정보를 전달하는 일종의 상수 값 윈도우 프로그래밍 가장 중요한 것은 메시지를 처리하는 것 윈도우 시스템 Application 이벤트 발생 메시지 전송 메시지 처리 화면에 출력.
Advertisements

Computer Graphics 윈도우 프로그래밍 김 창 헌김 창 헌. Computer Graphics 2 윈도우 시스템  윈도우  스크린 위에서 독립적으로 움직일 수 있는 사각형 영역  윈도우 시스템  유저와 어플리케이션간의 그래픽 스크린을 통한 인터페이스 를.
Visual C++ 구성. DevStudio –Visual C++ 를 실행시키면 전면에 뜨는 프로그램. – 텍스트에디터, 리소스에디터, 디버거 등 모든 기능 총괄 MFC(Microsoft Foundation Class) – 윈도우 프로그램을 만드는데 필요한 거의 모든.
CH5 디버그를 해보자 디버그 디버거 : 실행중인 응용 프로그램을 지정한 장소에서 정지하고, 그 시 점에서 변수, 메모리, 콜 스택의 내용을 참조하는것이 가능 Build -> Start Debug -> Go.
Hallym Univ MFC 개요 및 사용법 발표자 : 최 원 민 1 목 차목 차  MFC 의 개요  MFC 프로그램의 구조  SDI(Single Document Interface) 애플리케이션 구조  MDI(Multiple Document Interface)
미디어 프로그래밍 II 소개.
Visual C++ Programming Document/View Architecture
2013학년도 3-1 정보컴퓨터공학부 컴퓨터 소프트웨어 설계 및 실험
컴퓨터 공학 설계 및 실험 I MFC programming
1 비주얼 베이직 소개와 개발 환경 구축 비주얼 베이직 프로그래밍 환경을 구축하자!.
2007학년도 2학기 HCI 프로그래밍 II (분반 2) 2007년 가을학기 9/3/2007 박경신.
안 보여 줄끼가? 소프트웨어 프로젝트 1 – 제안서 발표 피바다 (A6)조 발표자 : 조기수.
Visual C++ Programming
03장 영상처리를 위한 Visual C++ 디지털 영상 파일 포맷 MFC 응용 프로그램 마법사를 이용한 MFC 프로젝트 작성
01. 안드로이드 개요와 개발환경 구축 제목.
윈도우 운영체제와 윈도우 응용 프로그램의 특징을 이해한다.
MFC Application Frameworks (AFX)
제1장 C#의 기초 1.1 .NET Framwork 1.2 .NET Environment 1.3 C# 소개.
Lecture 2 MFC and Application Frameworks
Visual C++ Programming Dialog Box
Visual C++ Programming Document/View Architecture 3
제 1 장 영상처리 기초.
MFC를 이용한 네트워크게임 졸업 프로젝트 담당 교수 : 김재형 교수님 김 성준 김 민기.
1. C 언어의 이해와 컴파일러 설치.
MFC 발전 과정과 주요 특징을 개괄적으로 이해한다.
Windows Programming 시작하기
1장 Visual Basic 2010 시작 1.1 프로그램에 대한 기초 1.2 Visual Basic 버전
Kasimov C언어 세미나 1st.
태양계 시뮬레이션 팀 명: 복학생 강유진 박지혜.
안드로이드 개요 2005년 휴대폰 소프트웨어 개발사인 Android를 구글이 인수 2007년 11월 오픈소스로 공개
Hello World Bot Framework
1 C 언어의 이해와 컴파일러 설치 프로그래밍 환경을 구축하자!.
졸업작품발표 타자 연습 프로그램 By.. Eunju 담당 교수 : 이형원 교수님 학번 : 이름 : 김은주.
Network Socket Programming
Microsoft Visual C++ 제 1편 입문편 5장. 샘플 프로그램의 사용자화
MFC Application Frameworks (AFX)
MFC 프로그래밍에 관한 팁 / Keyboard / Timer
MFC 프로그래밍에 관한 팁 / Keyboard
Visual C++ Programming
Visual C++ Programming Output and File
MFC UI for TS Analyzer 서울시립대학교 컴퓨터통계학과 최 용 진.
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
쪽지 전송 프로그램 - 최종보고 장승수 최희진 오민영.
Visual Studio 2010 프로젝트 생성하기 PC화면에서 Visual Studio 2010 아이콘을 더블클릭 하거나
Visual C++ Programming
날짜: 팀명: TEAM-SIX 발표자: 이기영
객체 지향 프로그래밍.
Computer Graphics OpenGL 설치 및 설정
제1장 프로그래밍 기초
Lab 4 보고서 교재 5장 사용자 인터페이스 예제 - 사용자 인터페이스 갱신
Lab 1 Guide: 교재 2장 DrawX ( 쪽)
김 정 석 Web Programming 김 정 석
Appendix A 구조적 시스템 개발 방법론.
ODBC &DAO 안명상.
프로젝트 포트폴리오 요약 프로젝트 종류 프로젝트 이력 역할 주요 기술 : Windows System Application
CH2. ASP.NET 페이지 분석 HTML ASP ASP.NET 의 차이점.
비주얼 프로그래밍(2분반) 강의노트 2분반 = 월/목.
Remote Control Plus - 졸업 프로젝트 배문희.
3장. 제어 메시지 처리하기 1/211 1.
C언어 개론.
제 7장 이벤트.
Windows 프로그래밍 환경 및 MFC의 구조
1장 Visual Basic 2010 시작 1.1 프로그램에 대한 기초 1.2 Visual Basic 버전
컴퓨터 계측 및 실습 C++ 기초 영남대학교 기계공학부.
강의교안 이용 안내 *이 책에 딸린 강의자료는 교수님의 효율적인 수업진행을 돕기 위해 만들어졌습니다.
실시간 음성 채팅 서비스 (Voice Chatting Programe)
1 2 4 &
MFC 응용 프로그램 구조 두 개의 윈도우로 구성된 일반적인 MFC 프로그램 프레임 윈도우
MFC 기초 윈도우 응용프로그램 개발 간략한 역사 Microsoft Foundation Classes
두손Order 푸드팩토리 두손Order Ver 1.0 ㈜시소이드.
Presentation transcript:

윤 홍 란 hryun@sookmyung.ac.kr MFC 기초 윤 홍 란 hryun@sookmyung.ac.kr

윈도우 프로그래밍 Win32 API MFC와 Win32 API Application Programming Interface 응용프로그램을 작성하기 위해서 OS에 요구하는 방식을 체계적으로 모아 놓은 것으로 일종의 함수의 집합 API함수는 C코드로 제공 MFC와 Win32 API Microsoft Foundation ClassLibrary Win32 API의 기능을 그대로 이용하면서도 프로그래머에게 쉬운 접근을 할수 있도록 클래스 단위로 모아 놓은 라이브러리

윈도우 프로그래밍 ◐ 도스상에서의 실행 파일 생성 과정 ◑ Source Code (Sample.cpp) C++ Compiler Object File (Sample.obj) Linker Executable Program (Sample.exe)

윈도우 프로그래밍 ◐ 윈도우 상에서의 실행 파일 생성 과정 ◑ Developer Studio Linker Compiler Resource Compiler Source files Windows header Windows, runtime, and MFC libraries OBJ files Runtime header Executable (EXE) Resource file (RES) Bitmaps, icons, and other resources Resource.h Resource script file(RC) MFC header Resource compilation Code compilation

윈도우 프로그래밍 프로그램 코드 : *.c OR *.cpp 리소스 데이터 : *.rc 리소스 데이터는 응용 프로그램 안에서 공통적으로 사용되는 정적 데이터들의 집합. 리소스 편집기(App Studio)를 사용하여 프로그램에 필요한 리소스 데이터를 작성한다. *.rc 리소스 컴파일러 Link *.EXE 리소스 데이터는 일반적으로 프로그램의 .EXE 파일에 포함되어 있지만, 보통의 프로그램 데이터 세그먼트에 존재하지 않고 별도의 장소에 보관된다 리소스 데이터는 필요로 할 때만 메모리에 적재된다. 대부분의 리소스 데이터는 읽기 전용 데이터이다.

윈도우 프로그래밍 범위 C++ Application MFC Windows API ◐ 윈도우 API를 캡슐화한 MFC ◑

윈도우 프로그래밍 VC++의 CASE(Computer-Aided Software Engineering) 도구 AppWizard (자동 코드 생성기) 프로그램의 틀을 자동적으로 생성해 주는 도구 AppStudio (Resource Editor, 리소스 편집기) 자원(Resource)들을 편집하는 도구 사용자 인터페이스 요소들(메뉴, 다이얼로그, 단축키 등)을 시각적으로 디자인할 수 있도록 도와 준다. ClassWizard (자동 코드 생성기) AppStudio에서 시각적으로 디자인된 요소들을 실제 프로그램 코드와 연결시키는 작업을 한다. 새로운 클래스를 정의한다.

윈도우 프로그래밍 C/C++ Compiler Resource Compiler Linker Visual C++ 컴파일러는 C 소스 코드와 C++ 소스 코드의 확장자에 따라, 프로젝트 파일에 설정된 소스 코드를 어떠한 방식으로 컴파일 할 것인가를 결정하기 때문에 C 구조로 작성된 C 소스 코드와 C++ 구조로 작성된 C++ 소스 코드를 모두 컴파일 할 수 있다. Resource Compiler RC파일을 컴파일해서 링커시에 필요한 .res 파일을 생성한다. .rc : 텍스트 파일 .res : 이진파일 Linker 링커는 컴파일러로 만들어진 .obj 파일과 .res 파일을 읽고, LIB 파일과 결합하고, DLL 과 연결시켜 EXE 파일을 작성한다.

윈도우 운영체제 특징 (1/3) 그래픽 사용자 인터페이스

윈도우 운영체제 특징 (2/3) 메시지 구동 구조 이벤트 발생 대기 ... 시스템 메시지 대기열 메시지 대기열 #3 응용 프로그램 메시지 대기열 #1 메시지 대기열 #2 메시지 대기열 #3 ... 처리 대기

윈도우 운영체제 특징 (3/3) 멀티태스킹 멀티스레딩 여러 개의 응용 프로그램을 수행 하나의 응용 프로그램에 여러 개의 실행 흐름을 생성

윈도우 응용 프로그램 개발 도구 (1/3) SDK(Software Development Kit) 장점 단점 C 언어로 윈도우 API를 직접 호출해서 프로그램을 구현 장점 API를 직접 다루기 때문에 세부적인 제어가 가능하고, 윈도우 운영체제가 제공하는 모든 기능을 사용할 수 있다. 생성 코드의 크기가 작고 속도가 빠르다. 단점 생산성이 낮다.

윈도우 응용 프로그램 개발 도구 (2/3) RAD(Rapid Application Development) 장점 단점 시각적으로 화면을 디자인하고 코드를 추가하는 방법으로 프로그램을 빠르게 개발 장점 생산성이 높다. 단점 일반적으로 생성 코드의 크기가 크고 실행 속도가 느리다. 운영체제가 제공하는 모든 기능을 활용한 세부적인 제어가 어렵다.

윈도우 응용 프로그램 개발 도구 (3/3) 클래스 라이브러리(Class Library) 장점 단점 윈도우 응용 프로그램 개발에 필수적인 기능을 객체 지향 언어를 이용하여 클래스로 제공 장점 SDK보다 생산성이 높다. RAD보다 생성 코드의 크기가 작고 실행 속도가 빠르다. 단점 초기 학습에 필요한 기간이 길다. 객체 지향 언어 클래스 라이브러리 구조와 기능, 각 클래스의 관계 파악

MFC 란? Microsoft Foundation Class (마이크로소프트 사의 기반 클래스) Visual C++과 함께 제공되는 내장 클래스 (Library Class) Visual C++을 사용해 윈도우 프로그램을 간단하게 개발할 수 있는 유용한 클래스 기본 Window의 형태들을 새로 만들지 않고 MFC를 상속 받아 그냥 쓰면 됨 프로그래머의 작업시간을 단축시켜줌

Why MFC? 응용프로그램 MFC SDK API 운영체제 이해가 쉬움 코드의 재사용성 향상 소프트웨어 개발의 용이성 연관된 함수와 데이타를 “클래스”를 이용하여 그룹화하였음 코드의 재사용성 향상 소프트웨어 개발의 용이성 애플리케이션 프레임워크(application framework) 제공 멤버 함수 나열 코드 삽입의 용이성 응용프로그램 MFC SDK API 운영체제

MFC 발전 과정 (1/2) 연도 개발 도구 MFC 버전 주요 특징 1992 MS C 7.0 1.0 16비트 윈도우 API를 클래스화 OLE 1.0 지원 1993 비주얼 C++ 1.0 2.0 도큐먼트/뷰 구조 도입으로 MFC의 기본 골격 완성 DDX/DDV, 사용자 인터페이스 관련 클래스 추가 정적/동적 MFC 라이브러리 지원 비주얼 C++ 1.5 2.5x OLE 2.01 지원 ODBC 클래스 추가 1994 비주얼 C++ 2.x 3.x 32비트 윈도우 API로 전환 멀티스레드 지원 윈속(Winsock), MAPI 지원

MFC 발전 과정 (2/2) 연도 개발 도구 MFC 버전 주요 특징 1995 비주얼 C++ 4.x 4.x 공통 컨트롤 클래스 추가 DAO와 32비트 ODBC 지원 인터넷 관련 클래스 추가 1997 비주얼 C++ 5.0 4.21 ATL 추가 1998 비주얼 C++ 6.0 6.0 ATL 업그레이드 여러 개의 새로운 클래스 추가(CHtlmView, ...) OLE DB, ADO 지원 강화 2002 비주얼 C++ .NET 7.0 새로운 MFC DLL 사용(MFC70.DLL) MFC와 ATL의 통합 강화 사용자 인터페이스 클래스 추가 유틸리티 클래스 추가 ATL 서버 클래스 추가

MFC 주요 특징 (1/3) 윈도우 응용 프로그램을 작성하는데 드는 수고를 크게 덜어준다. 라이브러리 재사용 AppWizard, ClassWizard, ... API를 기반으로 한 SDK 프로그램과 대등한 속도를 가진다. 인라인 함수 코드 크기 증가를 최소화한다. MFC DLL

MFC 주요 특징 (2/3) API 함수를 직접 호출할 수 있다. (예) ::ReleaseCapture(); C 언어로 작성된 윈도우 응용 프로그램을 쉽게 C++ 언어로 바꿀 수 있다. SDK 프로그래밍에 대한 기반 지식을 재활용할 수 있다. C++ 언어를 이용하여 기존의 C 언어에 비해 API를 좀더 편하게 사용할 수 있다. (예) 디폴트 인자

MFC 주요 특징 (3/3) API를 직접 사용해서 구현할 경우 복잡도가 높은 부분을 MFC를 이용하면 쉽게 구현할 수 있다. 인쇄 기능 지원, 툴바와 상태바 처리, 데이터베이스 지원, OLE와 액티브X, ...

MFC 개요도 AppWizard ……………………… ………………………………. ……………………………. ……………… 상속 이미 정의된 클래스들 AppWizard CMyApp clsss CMyDoc class CMainFrame class CMyView class 기본 골격만 갖춘 창

Object Oriented Programming 실객체를 표현한 소프트웨어 객체로 프로그램 구성 소프트웨어 객체들의 상호 동작으로 프로그램 수행 실객체 실세계 사건 소프트웨어 객체 프로그램 세계 메시지 있는 그대로 표현

Object Oriented Programming 프레임 윈도우 오브젝트 메뉴 오브젝트 툴바 오브젝트 뷰 오브젝트 상태바 오브젝트

Object 분리 예 = +

일관된 사용자 인터페이스

AFX Classes 어플리케이션 프로그램을 구성하는 오브젝트 단위로 분할 분리된 오브젝트는 철저하게 역할을 분담 프레임 윈도우와 뷰를 분리 도큐먼트와 뷰를 분리

Application Frameworks (AFX) CDocument 데이터를 저장, 처리 (눈에는 안보임) CFrameWnd 윈도우의 프레임(틀)을 관리 CView 데이터를 보여주는 윈도우 CWinApp 위의 세 오브젝트를 묶어주고, 프로그램을 구동 시킴 (눈에는 안보임)

AFX 클래스의 계층 구조 거의 모든 MFC 클래스의 기반 클래스 커맨드 메세지를 받는 기능 프로그램을 구동시키는 기능 CCmdTarget CWinApp CDocument CObject CWnd CFrameWnd CView 거의 모든 MFC 클래스의 기반 클래스 커맨드 메세지를 받는 기능 프로그램을 구동시키는 기능 데이터를 저장하고 처리하는 기능 윈도우에 관련된 기능 (눈에 보이는 오브젝트) 프로그램 윈도우 프레임(외곽)을 관리하는 기능 데이터를 보여주는 윈도우 관리하는 기능

프로그램의 뼈대 만들기 AppWiard가 해 주는 일 MFC의 AFX 클래스에서 상속을 받아 아래 그림과 같이 네 개의 클래스를 생성 상속 받은 클래스에는 MFC의 막강한 기능들이 상속

AppWizard MFC 기반 클래스 파생 클래스 프로젝트명 : My CCmdTarget CWinApp CDocument CObject CWnd CFrameWnd CView MFC 기반 클래스 CMyApp CMyDoc CMainFrame CMyView 파생 클래스 프로젝트명 : My

M F C 상 속 CWinApp CFrameWnd CView CDocument C프로젝트명App C프로젝트명View 상 속 C프로젝트명App C프로젝트명View CMainFrm C프로젝트명Doc

CFrameWnd CWinApp CDocument CView protected/private 멤버 멤버 함수 멤버 변수 CMyApp 클래스의 인스턴스 (전역 변수)

CWinApp 클래스 CWinApp 클래스의 역할 CMyApp 클래스의 인스턴스가 유일하게 전역변수로 선언 프로그램의 시작과 종료를 담당 프로그램이 시작될 때, 메인 프레임 윈도우를 생성 무한루프를 돌면서 메시지를 뿌려줌 WM_QUIT 메시지를 만나면 무한루프를 빠져 나옴 프로그램을 전체를 대표하는 기능들을 수행 CMyApp 클래스의 인스턴스가 유일하게 전역변수로 선언

CWinApp 클래스의 동작 CWinApp 프로그램 시작 무한 루프 프로그램 종료 InitInstance( ) Run( ) ExitInstance( ) 프로그램 종료

CWinApp 파생 클래스의 동작 CWinApp CMyApp 상 속 프로그램 시작 프로그램 종료 무한 루프 InitInstance( ) Run( ) ExitInstance( ) 프로그램 종료 무한 루프 InitInstance( ) ExitInstance( )

CWnd 클래스 윈도우에 관련된 기능 메시지 핸들러 함수 윈도우의 크기, 위치, 모양, 상태 등을 제어하기 위한 기능을 제공 메시지 핸들러-윈도우에서 발생하는 메시지를 처리 CCmdTarget CWinApp CDocument CObject CWnd CFrameWnd CView

CFrameWnd 클래스 일반적인 윈도우로서의 역할 프레임 윈도우로서의 고유한 역할 프레임 윈도우도 일종의 윈도우 윈도우의 크기, 위치, 상태 등의 조절에 관한 일과 같은 윈도우로서의 역할 툴바와 상태바를 다는 것은 CFrameWnd 클래스에서 상속을 받은 파생 클래스에서 추가 OnCreate 함수를 오버라이딩 하고, 그 함수 안에다가 툴바와 상태바를 생성시켜 메다는 기능을 추가 오버라이딩 된 OnCreate 함수에서 기반 클래스의 OnCreate 함수를 반드시 호출 int CMyWnd::OnCreate(LPCREATESTRUCT lpCreateStruct) { CWnd::OnCreate(lpCreateStruct); // 여기에 수행 하고자 하는 기능을 넣으면 됩니다. }

메인프레임 클래스(CMainFrame) -CWnd 클래스와 메시지 핸들러- 윈도우 메시지 발생하는 상황 WM_CREATE 윈도우가 생성될 때 WM_ACTIVATE 활성화 되거나 비 될 WM_PAINT 다시 그려져야 할 필요가 있을 WM_MOUSEMOVE 윈도우의 위에서 마우스 커서가 움직였을 WM_COMMAND 사용자가 메뉴나 버튼을 눌러 명령을 내렸을 WM_LBUTTONDOWN 왼쪽 버튼이 눌렸을 WM_LBUTTONUP 떼어졌을 WM_LBUTTONDBLCLK 더블 클릭 됐을 WM_KEYDOWN 키보드가 WM_KEYUP WM_SIZE 크기가 변경되었을 WM_MOVE 이동 되었을 WM_TIMER 윈도우에 설정된 타이머의 시간이 다 WM_DESTROY 없어질

윈도우 메시지와 메시지 핸들러 윈도우 메시지 핸들러 함수 WM_CREATE OnCreate WM_ACTIVATE OnActivate WM_PAINT OnPaint WM_MOUSEMOVE OnMouseMove WM_DESTROY OnDestroy WM_LBUTTONDOWN OnLButtonDown WM_LBUTTONUP OnLButtonUp WM_LBUTTONDBLCLK OnLButtonDblClk WM_KEYDOWN OnKeyDown WM_KEYUP OnKeyUp WM_SIZE OnSize WM_MOVE OnMove WM_TIMER OnTimer WM_COMMAND 다른 방식으로 처리됨

CWnd클래스의 기본 동작

메시지 큐 윈도우 오퍼레이팅 시스템 메시지 프로그램 메시지 큐 CWinApp::Run( ) { switch( ) case : } 메시지 핸들러 WM_CREATE WM_ACTIVATE OnCreate OnActivate OnMove WM_ACTIVATE WM_MOVE

CView 클래스 일반적인 윈도우로서의 역할 뷰 윈도우로서의 고유한 역할 프로그램에서 다루는 데이터를 보여줌 class CMyView : public CView { public: CMyDoc* GetDocument( ); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CMyView) virtual void OnDraw(CDC* pDC); // overridden to draw this view protected: virtual BOOL OnPreparePrinting(CPrintInfo* pInfo); virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo); virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo); //}}AFX_VIRTUAL };

CView 클래스 GetDocument() OnDraw() 도큐먼트 오브젝트의 포인터를 얻는 함수 각각 도큐먼트에서 데이터를 가져와 그리는 기능을 수행하는 함수

CDocument 클래스 CDocument 클래스의 역할 파일로부터 데이터를 읽어오는 기능 (“파일” 메뉴의 “열기” 기능) 파일에 데이터를 저장하는 기능 (“파일” 메뉴의 “저장” 기능) 새로운 데이터를 만드는 기능 (“파일” 메뉴의 “새 파일” 기능) 작업 중인 데이터를 닫는 기능 (“파일” 메뉴의 “닫기” 기능) 데이터가 변경된 사실을 뷰 오브젝트에 알리는 기능 // MyDoc.h class CMyDoc : public CDocument { protected: // create from serialization only CMyDoc(); // Overrides public: virtual BOOL OnNewDocument(); // Implementation virtual ~CMyDoc(); };

메시지 맵(Message Map) 메시지와 메시지 처리함수의 연결

MFC 전역 함수 함수 이름 기능 AfxMessageBox() 메시지 상자를 표시한다. AfxGetApp() 응용 프로그램 객체의 주소를 리턴한다. AfxGetMainWnd() 메인 윈도우 객체의 주소를 리턴한다. AfxGetAppName() 응용 프로그램의 이름을 리턴한다. AfxGetInstanceHandle() 인스턴스 핸들을 리턴한다. AfxBeginThread() 스레드를 시작한다. AfxEndThread() 스레드를 종료한다.

AfxMessageBox() 사용 예 void CMainFrame::OnLButtonDown(UINT nFlags, CPoint point) { AfxMessageBox("마우스를 클릭했습니다."); }

MFC 어플리케이션 개발 과정 Visual C++ MFC골격 코드 생성 사용자 인터페이스 오브젝트 생성 및 편집 AppWizard를 이용하여 MFC골격(Framework)을 구성하는 코드 생성 사용자 인터페이스 오브젝트 생성 및 편집 리스스에디터사용 핸들러 코드 생성 클래스 위저드 사용 핸들러 코드 작성 클래스 위저드로 생성된 핸들러 맴버 함수의 원형에 고유한 기능 추가 어플리케이션 소스코드 컴파일 및 링크 실행파일 생성

Microsoft Developer Studio

AppWizard를 이용한 MFC 응용 프로그램 생성 (1/8) 프로젝트 종류 선택

AppWizard를 이용한 MFC 응용 프로그램 생성 (2/8)

AppWizard를 이용한 MFC 응용 프로그램 생성 (3/8)

AppWizard를 이용한 MFC 응용 프로그램 생성 (4/8)

AppWizard를 이용한 MFC 응용 프로그램 생성 (5/8)

AppWizard를 이용한 MFC 응용 프로그램 생성 (6/8)

AppWizard를 이용한 MFC 응용 프로그램 생성 (7/8)

Project Information

결과