Windows 데스크톱 마법사

Windows 데스크톱 마법사는 Visual Studio 2017 이상에서 Win32 애플리케이션 마법사를 대체합니다. 마법사를 사용하면 4가지 유형의 C++ 프로젝트(아래 표의 제목에 나열됨)를 만들 수 있습니다. 각각의 경우 연 프로젝트 형식에 적합한 추가 옵션을 지정할 수 있습니다.

Screenshot of the Windows Desktop Project wizard.

다음 표에서는 각 애플리케이션 유형에 사용할 수 있는 옵션을 나타냅니다.

지원 유형 콘솔 애플리케이션 실행 파일(Windows) 애플리케이션 동적 링크 라이브러리 정적 라이브러리
빈 프로젝트 아니요
내보내기 기호 아니요 없음 아니요
미리 컴파일된 헤더 아니요 없음 없음
ATL 지원 없음 없음 아니요
MFC 지원 없음 없음

개요

이 마법사 페이지에서는 만들려는 Win32 애플리케이션에 대한 현재 프로젝트 설정을 설명합니다. 기본적으로 설정된 옵션은 다음과 같습니다.

  • 프로젝트는 Windows 애플리케이션입니다.

  • 프로젝트가 비어 있지 않습니다.

  • 프로젝트에 내보내기 기호가 없습니다.

  • 프로젝트에서 미리 컴파일된 헤더 파일을 사용하지 않습니다. 이 옵션은 정적 라이브러리 프로젝트에만 사용할 수 있습니다.

  • 프로젝트에 MFC 또는 ATL에 대한 지원이 없습니다.

응용 프로그램 유형

지정된 애플리케이션 유형을 만듭니다.

옵션 설명
콘솔 애플리케이션 콘솔 애플리케이션을 만듭니다. 또한 Visual C++ 런타임 라이브러리 는 콘솔 창의 출력 및 입력과 같은 printf_s()scanf_s()표준 I/O 함수를 제공합니다. 콘솔 애플리케이션에는 그래픽 사용자 인터페이스가 없습니다. .exe 파일로 컴파일되며 명령줄에서 독립 실행형 애플리케이션으로 실행할 수 있습니다.

콘솔 애플리케이션에 MFC 및 ATL 지원을 추가할 수 있습니다.
Windows 애플리케이션 Win32 프로그램을 만듭니다. Win32 프로그램은 Win32 API 호출을 사용하여 그래픽 사용자 인터페이스를 만드는 C 또는 C++로 작성된 EXE(실행 가능 애플리케이션)입니다.

Windows 애플리케이션에 MFC 또는 ATL 지원을 추가할 수 없습니다.
동적 링크 라이브러리 Win32 DLL(동적 연결 라이브러리)을 만듭니다. Win32 DLL은 C 또는 C++로 작성된 이진 파일로, MFC 클래스가 아닌 Win32 API 호출을 사용하며 여러 애플리케이션에서 동시에 사용할 수 있는 함수의 공유 라이브러리 역할을 합니다.

이 마법사를 사용하여 만든 DLL 애플리케이션에 MFC 또는 ATL 지원을 추가할 수는 없지만 새 > 프로젝트 > MFC DLL을 선택하여 MFC DLL을 만들 수 있습니다.
정적 라이브러리 정적 라이브러리를 만듭니다. 정적 라이브러리는 실행 파일을 빌드할 때 프로그램에 연결되는 개체와 해당 함수 및 데이터를 포함하는 파일입니다. 이 항목에서는 정적 라이브러리에 대한 시작 파일 및 프로젝트 속성을 만드는 방법을 설명합니다. 정적 라이브러리 파일은 다음과 같은 이점을 제공합니다.

- Win32 정적 라이브러리는 작업 중인 애플리케이션이 MFC 클래스가 아닌 Win32 API를 호출하는 경우에 유용합니다.
- 연결 프로세스는 Windows 애플리케이션의 나머지 부분을 C로 작성하든 C++로 작성하든 동일합니다.
- 정적 라이브러리를 MFC 기반 프로그램 또는 비 MFC 프로그램에 연결할 수 있습니다.

추가 옵션

해당 형식에 따라 애플리케이션에 대한 지원 및 옵션을 정의합니다.

옵션 설명
빈 프로젝트 프로젝트 파일이 비어 있음을 지정합니다. 소스 코드 파일 집합(예: .cpp 파일, 헤더 파일, 아이콘, 도구 모음, 대화 상자 등)이 있고 Visual C++ 개발 환경에서 프로젝트를 만들려면 먼저 빈 프로젝트를 만든 다음 프로젝트에 파일을 추가해야 합니다.

정적 라이브러리 프로젝트에는 이 선택을 사용할 수 없습니다.
내보내기 기호 DLL 프로젝트에서 기호를 내보내는 것을 지정합니다.
미리 컴파일된 헤더 정적 라이브러리 프로젝트에서 미리 컴파일된 헤더를 사용하게 지정합니다.
SDL(보안 개발 수명 주기) 검사 SDL에 대한 자세한 내용은 Microsoft SDL(보안 개발 수명 주기) 프로세스 지침을 참조 하세요.

에 대한 공통 헤더를 추가합니다.

Visual C++에 제공된 라이브러리 중 하나에 대한 지원을 추가합니다.

옵션 설명
Atl ATL(활성 템플릿 라이브러리)의 클래스에 대한 프로젝트 지원으로 빌드됩니다. Win32 콘솔 애플리케이션에만 해당합니다.

참고 : 이 옵션은 ATL 코드 마법사를 사용하여 ATL 개체를 추가하기 위한 지원을 나타내지 않습니다. ATL 지원으로 ATL 프로젝트 또는 MFC 프로젝트에만 ATL 개체를 추가할 수 있습니다.
Mfc MFC(Microsoft Foundation Class) 라이브러리에 대한 프로젝트 지원으로 빌드됩니다. Win32 콘솔 애플리케이션 및 정적 라이브러리에만 해당합니다.

설명

Windows 데스크톱 애플리케이션을 만들었으면 제네릭 코드 마법사를 사용하여 제네릭 C++ 클래스를 추가할 수 있습니다. HTML 파일, 헤더 파일, 리소스 또는 텍스트 파일 등의 다른 항목을 추가할 수 있습니다.

참고 항목

ATL 클래스는 추가할 수 없으며 MFC 클래스는 MFC를 지원하는 Windows 데스크톱 애플리케이션 형식(이전 표 참조)에만 추가할 수 있습니다.

마법사에서 프로젝트용으로 만든 파일은 솔루션 탐색기에서 볼 수 있습니다. 마법사에서 프로젝트에 대해 만드는 파일에 대한 자세한 내용은 프로젝트에서 생성된 파일을 ReadMe.txt참조하세요. 파일 형식에 대한 자세한 내용은 Visual Studio C++ 프로젝트를 위해 만든 파일 형식입니다.

참고 항목

Visual Studio의 C++ 프로젝트 형식