반응형

C/C++ 및  Win32&MFC 프로그래밍을 위해 Visual Studio Community 2017를 설치하는 방법을 다루고 있습니다.



테스트  환경은 다음과 같습니다.


  • Windows 10 Pro 64bit




다음 순서로 설명합니다.


1. 비주얼 스튜디오 설치


2. 비주얼 스튜디오 초기 설정


3. 비주얼 스튜디오 언어 변경


4. 비주얼 스튜디오 구성요소 변경


5. 비주얼 스튜디오 완전히 제거




본 포스팅에서는 비주얼 스튜디오 설치 방법만 설명하고 있습니다.

C/C++, Win32 API, MFC 프로젝트 생성 방법은 따로 추가될 예정입니다.




최초 작성 2017. 4. 20

마지막 업데이트 2018. 5. 31




1. 비주얼 스튜디오 설치


1-1. 아래 사이트에서 Visual Studio Community 2017 인스톨러를 다운로드 받습니다.

https://www.visualstudio.com/ko/vs/community/




인스톨러도 업데이트가 지속적으로 되고 있어서 vs_community__뒤에 붙는 숫자는 이후 바뀔수 있습니다.


vs_community__1271523346.1527677674.exe




1-2. 다운로드 받은 인스톨러를 실행한 후, 계속을 클릭합니다.





1-3. 왼쪽 위에 Visual Studio 버전, 오른쪽 아래에 비주얼 스튜디오 인스톨러 버전이 표시됩니다.




상단에 보이는 다음  4개의 탭을 선택하여 세부 설치 옵션을 변경할 수 있습니다.





1-4. 워크로드 탭에서 개발 목적을 선택하면 해당 개발을 위해 필요한 구성요소들이 선택됩니다.

선택된 구성요소들은  개별 구성 요소 에서도 확인할 수 있습니다.


다음 캡쳐 화면은 글 작성 시점에서 선택 가능한 전체 리스트입니다.

비주얼 스튜디오 버전이 업데이트되면 변경될 수 있습니다.  현재 버전은 15.7.2입니다.








1-5. 개별 구성 요소 탭에서는 필요한 구성 요소만 선택하여 설치할 수 있었습니다.

현재 선택 가능한 전체 구성 요소 리스트입니다.


비주얼 스튜디오 버전이 업데이트 되면 글 작성한 시점과 다르게 보일 수 있습니다.



.NET


.NET 네이티브

.NET 이식 가능한 라이브러리 타기팅 팩

.NET Core 런타임

.NET Framework 3.5 개발 도구

.NET Framework 4 타기팅 팩

.NET Framework 4.5 타기팅 팩

.NET Framework 4.5.1 타기팅 팩

.NET Framework 4.5.2 타기팅 팩

.NET Framework 4.6 타기팅 팩

.NET Framework 4.6.1 타기팅 팩

.NET Framework 4.6.1 SDK

.NET Framework 4.6.2 타기팅 팩

.NET Framework 4.7 타기팅 팩

.NET Framework 4.7 SDK

.NET Framework 4.7.1 타기팅 팩

.NET Framework 4.7.1 SDK

고급 ASP.NET 기능

Microsoft .NET Framework 4.6.2 SDK



개발 작업


웹 프로젝트에 대한 F# 언어 지원

포함 및 IoT 개발

ASP.NET 및 웹 개발 도구

C# 및 Visual Basic

C++ Android 개발 도구

C++ iOS 개발 도구

CMake 및 Linux용 Visual C++ 도구

Cookiecutter 템플릿 지원

F# 데스크톱 언어 지원

F# 언어 지원

JavaScript 및 TypeScript 언어 지원

JavaScript 핵심 기능을 이용한 모바일 개발

JavaScript ProjectSystem 및 공유 도구

Linux 개발용 Visual C++

Microsoft R 클라이언트(3.3.2)

Node.js 지원

Node.js 지원

Python 언어 지원

Python 웹 지원

Python IoT 지원

R 언어 지원

Razor 언어 서비스

Visual Studio C++ 핵심 기능

Visual Studio용 Office 개발자 도구

VSTO(Visual Studio Tools for Office)

Windows Communication Foundation

Windows Workflow Foundation

Xamarin

Xamarin Remoted Simulator

Xamarin Workbooks



개임 개발 도구 모음


이미지 및 3D 모델 편집기

Cocos

DirectX용 그래픽 디버거 및 GPU 프로파일러

Unity 2017.2 64비트 편집기

Unreal Engine에 대한 Visual Studio Android 지원

Visual Studio Tools for Unity



개임 및 그래픽


Unreal Engine 설치 관리자



디버깅 및 테스트


.NET 프로파일링 도구

테스트 도구 핵심 기능

C++ 프로파일링 도구

JavaScript 진단

Just-In-Time 디버거

Test Adapter for Boost.Test

Test Adapter for Google Test



에뮬레이터


Google Android Emulator(API 레벨 23)(로컬 설치)

Google Android Emulator(API 레벨 23)(전역 설치)

Google Android Emulator(API 레벨 25)

Google Android Emulator(API 레벨 27)

Intel HAXM(Hardware Accelerated Execution Manager)(로컬 설치)

Intel HAXM(Hardware Accelerated Execution Manager)(전역 설치)

Visual Studio Emulator for Android

Windows 10 모바일 에뮬레이터(Anniversary Edition)

Windows 10 Mobile 에뮬레이터(Creators Update)

Windows 10 Mobile 에뮬레이터(Fall Creators Update)



컴파일러, 빌드 도구 및 런타임


.NET Compiler Platform SDK

데스크톱용 VC++ 2015.3 v14.00(v140) 도구 집합

표준 라이브러리에 대한 모듈(실험적)

ARM64용 C++ 유니버설 Windows 플랫폼 도구

ARM64용 Visual C++ 컴파일러 및 라이브러리

ARM용 Visual C++ 컴파일러 및 라이브러리

C# 및 Visual Basic Roslyn 컴파일러

C++/CLI 지원

C++용 Windows XP 지원

Clang/C2(실험적)

CMake용 Visual C++ 도구

IncrediBuild - 빌드 가속

MSBuild

Node.js v6.4.0(x86) 기반 구성 요소에 대한 런타임

Node.js v7.4.0(x86) 기반 구성 요소에 대한 런타임

Python 2 32-bit (2.7.14)

Python 2 64-bit (2.7.14)

Python 3 32-bit (3.6.5)

Python 3 64-bit (3.6.5)

R 개발 도구에 대한 런타임 지원

UWP용 Visual C++ 런타임

VC + + 2017 버전 15.7 v14.14 스펙터용 라이브러리(ARM)

VC + + 2017 버전 15.7 v14.14 스펙터용 라이브러리(ARM64)

VC + + 2017 버전 15.7 v14.14 스펙터용 라이브러리(x86 및 x64)

VC++ 2017 버전 15.4 v14.11 도구 집합

VC++ 2017 버전 15.5 v14.12 도구 집합

VC++ 2017 버전 15.6 v14.13 도구 집합

VC++ 2017 버전 15.7 v14.14 최신 v141 도구

Visual C++ 2017 재배포 가능 업데이트

Windows 유니버설 CRT SDK



코드 도구


기본 그래프 문서(DGML) 편집기

도움말 뷰어

정적 분석 도구

종속성 유효성 검사

클래스 디자이너

텍스트 템플릿 변환

ClickOnce 게시

Developer Analytics Tools

Git for Windows

LINQ to SQL 도구

NuGet 패키지 관리자

PowerShell 도구

PreEmptive Protection - Dotfuscator

Visual Studio용 GitHub 확장



클라우드, 데이터베이스 및 서버


.NET용 Azure 라이브러리

데이터 원본 및 서비스 참조

연결 및 게시 도구

웹 배포:

컨테이너 개발 도구

컨테이너 개발 도구 - 빌드 도구

클라우드 탐색기

Azure 개발 필수 구성 요소

Azure 계산 에뮬레이터

Azure 작성 도구

Azure Cloud Services 빌드 도구

Azure Cloud Services 핵심 도구

Azure Data Lake 및 Stream Analytics 도구

Azure Mobile Apps SDK

Azure Resource Manager 핵심 도구

Azure Storage 에뮬레이터

Azure Storage AzCopy

IIS Express

Microsoft Azure WebJobs Tools

Redgate SQL 검색

Service Fabric 도구

SQL ADAL 런타임

SQL Server 명령줄 유틸리티

SQL Server 지원의 데이터 소스

SQL Server Data Tools

SQL Server Express 2016 LocalDB

SQL Server Native Client

SQL Server용 CLR 데이터 형식



SDK, 라이브러리 및 프레임워크


.NET용 Blend for Visual Studio SDK

그래픽 도구 Windows 8.1 SDK

데스크톱 C++[ARM 및 ARM64]용 Windows 10 SDK(10.0.16299.0)

데스크톱 C++[x86 및 x64]용 Windows 10 SDK(10.0.15063.0)

데스크톱 C++[x86 및 x64]용 Windows 10 SDK(10.0.16299.0)

스펙터 완화를 사용하는 ARM64용 Visual C++ ATL

스펙터 완화를 사용하는 ARM64용 Visual C++ MFC 지원

스펙터 완화를 사용하는 ARM용 Visual C++ ATL

스펙터 완화를 사용하는 ARM용 Visual C++ MFC

스펙터 완화를 사용하는 Visual C++ ATL(x86/x64)

스펙터 완화를 사용하는 x86/x64용 Visual C++ MFC

Anaconda2 32-bit (5.1.0)

Anaconda2 64-bit (5.1.0)

Anaconda3 32-bit (5.1.0)

Anaconda3 64-bit (5.1.0)

Android 네이티브 개발 키트(R11C)

Android NDK(R11C)(32비트)

Android NDK(R12B)

Android NDK(R12B)(32비트)

Android NDK(R13B)

Android NDK(R13B)(32비트)

Android SDK 설치(API 레벨 19)(JavaScript를 통한 모바일 개발에 대한 로컬 설치/C++)

Android SDK 설치(API 레벨 21)(JavaScript를 통한 모바일 개발에 대한 로컬 설치/C++)

Android SDK 설치(API 레벨 22)(JavaScript를 통한 모바일 개발에 대한 로컬 설치/C++)

Android SDK 설치(API 레벨 23)(전역 설치)

Android SDK 설치(API 레벨 23)(JavaScript를 통한 모바일 개발에 대한 로컬 설치/C++)

Android SDK 설치(API 레벨 25)

Android SDK 설치(API 레벨 25)(JavaScript를 통한 모바일 개발에 대한 로컬 설치/C++)

Android SDK 설치(API 레벨 27)

Apache Ant (1.9.3)

ARM64용 Visual C++ ATL

ARM64용 Visual C++ MFC

ARM용 Visual C++ ATL

ARM용 Visual C++ MFC

Cordova 6.3.1 도구 집합

Entity Framework 6 도구

Java SE Development Kit(8.0.1120.15)

Modeling SDK

TypeScript 2.0 SDK

TypeScript 2.1 SDK

TypeScript 2.2 SDK

TypeScript 2.3 SDK

TypeScript 2.5 SDK

TypeScript 2.6 SDK

TypeScript 2.7 SDK

TypeScript 2.8 SDK

USB 장치 연결

UWP용 Windows 10 SDK(10.0.15063.0): C#, VB, JS

UWP용 Windows 10 SDK(10.0.15063.0): C++

UWP용 Windows 10 SDK(10.0.16299.0): C#, VB, JS

UWP용 Windows 10 SDK(10.0.16299.0): C++

Visual Studio SDK

Windows 10 SDK(10.0.10240.0)

Windows 10 SDK(10.0.10586.0)

Windows 10 SDK(10.0.14393.0)

Windows 10 SDK(10.0.17134.0)

Windows 8.1 SDK

Windows 유니버설 C 런타임

x86 및 x64용 Visual C++ ATL

x86 및 x64용 Visual C++ MFC



SDKs, libraries, and frameworks


Android NDK (R15C)

Android NDK (R15C) (32bit)




1-6. 언어 팩 탭에서는 메뉴나 에러 메시지 등의 사용자 인터페이스( user interface, UI )에서 보여줄 언어를 선택할 수 있습니다.


제 경우에는 한국어로 사용하다가 컴파일 에러 원인등을 찾기 위해서는 영어로 전환하여 사용하곤 합니다.  

구글링으로 해결 방법을 검색해보기에는 영어 메시지가 더 좋기 때문입니다.

유저 인터페이스 언어 설정을 변경하는 방법은 포스팅 마지막에 소개하고 있습니다.





1-7. 설치 위치 탭에서는 비주얼 스튜디오 관련 파일들이 설치되는 위치를 변경할 수 있습니다.

대부분의 경우 디폴트 값으로 사용하면 됩니다.





1-8. 워크로드 탭에서 C++를 사용한 데스크톱 개발, Visual Studio 확장 개발을 선택합니다.






..


..



1-9. 설치 프로그램 창의 오른쪽에 추가 선택 가능한 관련 항목들을 보입니다.

항목에 마우스 커서를 가져가면 간단한 설명을 보여줍니다.


x86 및 x64용 Visual C++ MFC와 C++/CLI 지원 을 추가로 선택해줍니다.


15.2에서는 리소스뷰를 열 때, x86용 rcdll.dll 파일을 못찾는 문제가 있어서  Windows 10 SDK(10.0.14393.0)을 선택해줘야 합니다.

https://www.visualstudio.com/ko-kr/news/releasenotes/vs2017-knownissues





1-10. 언어 팩 탭에서 영어를 추가로 선택해줍니다.


에러가 났을 때, 해결방법을 찾기위해  영어로된 에러 메시지를 검색하는 것이 더 유리하기 때문에 필요합니다.





1-11. 설치 프로그램 창의  오른쪽 아래를 보면 현재까지 선택한 항목들을 위해 필요한 디스크 공간을 보여줍니다.  




진행하기 전에 별도의 백신을 설치해서 사용하고 있으면 진행하기 전에 실시간 검사 기능을 끄는게 좋을 듯합니다.

AVG의 경우  실시간 검사기능을 끄지 않았더니 설치 도중에 진행이 안되고 계속 멈춰있었습니다.



설치 버튼을  클릭하면 다운로드 및 설치가 진행됩니다.

설치 후 시작이 체크되어 있으면 설치 완료 후 비주얼 스튜디오가 실행됩니다.





2. 비주얼 스튜디오 초기 설정


2-1. 처음 비주얼 스튜디오를 실행하면 로그인하라는 창이 나타납니다. 비주얼 스튜디오를 처음 실행할 때에만 보이는 창입니다.


로그인 버튼 또는 나중에 로그인을 클릭하여 진행합니다.




2-2. 로그인해놓지 않으면 30일 후 사용 기간이 종료되었다는 창이 나타나는데 이때 로그인해도 됩니다.

재설치하는 거라면 로그인 정보가 유지되기 때문에 보이지 않습니다.


기존 로그인 정보를 삭제하고 싶으면 다음 위치에서 비주얼 스튜디오를 설치한 날짜에 생성된 이름이 15로 시작하는 폴더를 삭제해주면 됩니다.  

C:\Users\로그인 사용자 이름\AppData\Local\Microsoft\VisualStudio




로그인을 안하면 설치 30일 후에 다음과 같은 메시지를 보여주는 창이 보입니다.

예전에 캡쳐해둔 거라 다르게 보일 수 있습니다.

라이선스: 30일 평가판(평가 목적으로만 사용)

평가 기간이 종료되었습니다.




로그인해주면 ( 계정이 없는 경우 등록을 클릭하여 할 수 있습니다. )



라이센스가 업데이트되어 계속 사용이 가능해집니다.





2-3. 간단한 환경 설정을 위한 창이 보입니다.

개발 설정Visual C++로 하고 색 테마는 맘에 드는 것으로 선택합니다.




현재 선택 가능한 개발 설정은 다음과 같습니다.

범용적인 용도로 보이는 일반 항목도 있지만 필요에 따라 최적화된 항목으로 바꾸어 주는 것이 더 좋을 듯 싶습니다.





3. 비주얼 스튜디오 언어 변경


3-1. 메뉴에서 도구 > 옵션을 선택하고 옵션 창의 왼쪽에 보이는 리스트에서 국가별 설정을 선택합니다.

현재는 비주얼 스튜디오의 사용자 인터페이스에서 사용하는 언어가 윈도우 설정을 따르게 되어 있습니다.




3-2. English로 바꾸고  확인 버튼을 클릭합니다.




3-3. 다음과 같은 메시지 창이 표시됩니다.




Visual Studio를 종료했다가 다시 실행시켜보면 메뉴와 툴바의 항목들과 컴파일 관련 메시지가 영어로 보여집니다.





3-4. 다시 한글로 바꾸려면 메뉴에서 Tools > Options를 선택합니다.


Options 창의 왼쪽 리스트에서 International Settings를 선택하고 Language 항목한국어 또는 Same as Microsoft Windows(한국어 버전 윈도우의 경우)로 변경합니다.


OK 버튼을 클릭 후 Visual Studio를 다시 실행시켜야 한글로 변경이 완료 됩니다.





4. 비주얼 스튜디오 구성요소 변경


4-1. 다른 개발 환경이나 구성 요소를 추가 설치하고 싶으면  설치시 사용했던 비주얼 스튜디어 인스톨러가 필요합니다.


시작 메뉴를 클릭 후, visual studio installer를 입력하여 검색되는 항목을 클릭하여 실행합니다.





4-2. 수정 버튼을 클릭합니다.





4-3. 비주얼 스튜디오 구성요소를 추가로 설치하기 위해 선택하면 인스톨러 오른쪽 아래에 추가로 필요한 디스크 공간을 알려줍니다.


  



구성요소를 제거 하기 위해 선택되어 있던 항목을 해제한 것이 더 많으면 음수로 표시될 수도 있습니다.  





4-4. 오른쪽 아래에 있는 수정 버튼을 누르면 추가 및 삭제가 시작됩니다.


다음과 같은 창이 보일 경우 비주얼 스튜디오를 종료하고 다시 시도 버튼을 클릭하면 계속 진행이 됩니다.





5. 비주얼 스튜디오 완전히 제거


5-1. 먼저 비주얼 스튜디오를 제거합니다.

비주얼 스튜디오 인스톨러에서 자세히를 클릭하고 보이는 메뉴에서 제거를 클릭합니다.

 




5-2. 확인 버튼을 클릭하면 제거가 시작됩니다.





5-3. 제거 완료 후, 로그인 정보 및 기존 설정까지 제거하려면 C:\Users\로그인 사용자 이름\AppData\Local\Microsoft 위치에 있는 VisualStudio 폴더를 삭제하면 됩니다.




5-4. 이제 비주얼 스튜디오 인스톨러도 삭제합니다.

윈도우 키 + R 을 누르고 appwiz.cpl를 입력하여 프로그램 제거 또는 변경을 실행합니다.





5-5. Microsoft Visual Studio Installer를 선택하고 제거를 클릭합니다.





5-6. 제거 버튼을 클릭하면 제거가 시작됩니다.




반응형

포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
댓글로 알려주시면 빠른 시일내에 답변을 드리겠습니다.

여러분의 응원으로 좋은 컨텐츠가 만들어집니다.
지금 본 내용이 도움이 되었다면 유튜브 구독 부탁드립니다. 감사합니다 : )

유튜브 구독하기


제가 쓴 책도 한번 검토해보세요.

  1. Favicon of https://jeongsu.tistory.com BlogIcon jeongsu 2018.01.31 20:47 신고

    와 정말 블로그 정말 좋은 글들이 많은것같아요 ㅋㅋ

    많이 참고하겠습니다.

  2. 윤명식 2018.09.08 14:51

    상세하게 설명잘해주셨네요 감사합니다.!

+ Recent posts