SlideShare a Scribd company logo
1 of 8
Download to read offline
VisualStudio
원격 디버깅 하기
NHN NEXT 이선협
1. 원격 디버거 소개
2. 설치
3. 구성 방법
4. 디버깅 하기
5. 참고 블로그
Visual Studio 설치?
필요 없어요~
멀리 떨어져 있어도
비싼 라이센스 없어도
 원격 디버거란?
 말 그대로 한 컴퓨터에 있는 프로그램을 다른 작업 공간에서 디버깅 하는 것
 왜 원격 디버깅을 하죠?
 서버 컴퓨터에 Visual Studio를 설치하기 위해서는 라이센스 비용이 필요합니다.
그 비용을 절약하기 위해서가 첫 번째 이유입니다.
 두 번째 이유는 서버에 Visual Studio를 설치하여 작업하는 것 보다 개발자 로컬에서
원격으로 접속하여 디버깅 하는 것이 더 효율 적이기 때문입니다.
 해당 PPT에서는 Visual Studio 2013을 기준으로 설명합니다.
원격 디버거 소개
 준비물
 Visual Studio가 설치되어 있는 로컬 PC
 디버깅을 할 파일이 있는 원격지 PC
1. 원격지 PC에 C:Remote 폴더를 만듭니다.
 원격 디버깅 할 경로를 정하는 것으로 다른 경로로 설정하더라도 상관없습니다.
2. 원격지 PC의 C:WindowsSystem32 폴더에서 다음 5개의 파일을
C:Remote 폴더에 복사합니다.
• mfc120.dll, msvcp120.dll, msvcr120.dll, msvcp120d.dll, msvcr120d.dll
3. 로컬 PC에서 디버깅 할 실행파일과 pdb파일을 원격지 PC의 C:Remote 폴더에 복사합니다.
4. 로컬 PC의 C:Program Files (x86)Microsoft Visual Studio 12.0Common7IDE에 있는
Remote Debugger 폴더를 원격지 PC의 C:Remote 폴더에 복사합니다.
5. C:RemoteRemote Debuggerx64에 있는 msvsmon.exe를 실행하고
Tools -> Options에서 포트를 설정합니다.
설치
1. Visual Studio 2013을 실행한 후 프로젝트 옵션을 실행합니다.
구성 속성 -> 디버깅에서 실행할 디버거를 원격 Windows 디버거로 변경합니다.
2. 다음과 같이 설정합니다.
구성 방법
1. 구성까지 하고 나면 디버깅을 하려고 하면 다음과 같은 로그인 창이 뜹니다.
2. 로그인에 성공하면 서버에서 접속 확인을 할 수 있고 디버깅을 시작 할 수 있습니다.
디버깅 방법
서버 PC 로컬 PC
1. http://suminpark80.tistory.com/3
2. http://blog.naver.com/btlee30?Redirect=Log&logNo=70166853549
참고 블로그
감사합니다

More Related Content

Viewers also liked

당신의 디버깅에 니코니코니
당신의 디버깅에 니코니코니당신의 디버깅에 니코니코니
당신의 디버깅에 니코니코니Lusain Kim
 
Visual studio 사용 설명서(기초 과정)
Visual studio 사용 설명서(기초 과정)Visual studio 사용 설명서(기초 과정)
Visual studio 사용 설명서(기초 과정)Lusain Kim
 
포스트모템디버깅과 프로세스 덤프 실전
포스트모템디버깅과 프로세스 덤프 실전포스트모템디버깅과 프로세스 덤프 실전
포스트모템디버깅과 프로세스 덤프 실전주항 박
 
[실전 윈도우 디버깅] 13 포스트모템 디버깅
[실전 윈도우 디버깅] 13 포스트모템 디버깅[실전 윈도우 디버깅] 13 포스트모템 디버깅
[실전 윈도우 디버깅] 13 포스트모템 디버깅종빈 오
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?선협 이
 
공감세미나 성능테스트
공감세미나 성능테스트공감세미나 성능테스트
공감세미나 성능테스트Lim SungHyun
 
파크히어 Realm 사용 사례
파크히어 Realm 사용 사례파크히어 Realm 사용 사례
파크히어 Realm 사용 사례선협 이
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑MinGeun Park
 
오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발
오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발
오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발주항 박
 
C++과 Lua script연동
C++과 Lua script연동C++과 Lua script연동
C++과 Lua script연동선협 이
 
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013Esun Kim
 
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅승엽 신
 
후처리알아보기
후처리알아보기후처리알아보기
후처리알아보기종규 우
 
Pitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONYPitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONYAnaya Medias Swiss
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근MinGeun Park
 
Boost 라이브리와 C++11
Boost 라이브리와 C++11Boost 라이브리와 C++11
Boost 라이브리와 C++11OnGameServer
 

Viewers also liked (20)

Tdd ver.2
Tdd ver.2Tdd ver.2
Tdd ver.2
 
TDD
TDDTDD
TDD
 
당신의 디버깅에 니코니코니
당신의 디버깅에 니코니코니당신의 디버깅에 니코니코니
당신의 디버깅에 니코니코니
 
Visual studio 사용 설명서(기초 과정)
Visual studio 사용 설명서(기초 과정)Visual studio 사용 설명서(기초 과정)
Visual studio 사용 설명서(기초 과정)
 
포스트모템디버깅과 프로세스 덤프 실전
포스트모템디버깅과 프로세스 덤프 실전포스트모템디버깅과 프로세스 덤프 실전
포스트모템디버깅과 프로세스 덤프 실전
 
[실전 윈도우 디버깅] 13 포스트모템 디버깅
[실전 윈도우 디버깅] 13 포스트모템 디버깅[실전 윈도우 디버깅] 13 포스트모템 디버깅
[실전 윈도우 디버깅] 13 포스트모템 디버깅
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?
 
공감세미나 성능테스트
공감세미나 성능테스트공감세미나 성능테스트
공감세미나 성능테스트
 
파크히어 Realm 사용 사례
파크히어 Realm 사용 사례파크히어 Realm 사용 사례
파크히어 Realm 사용 사례
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
 
오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발
오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발
오픈 소스를 활용한 캐쥬얼 게임 서버 프레임워크 개발
 
C++과 Lua script연동
C++과 Lua script연동C++과 Lua script연동
C++과 Lua script연동
 
카툰 렌더링
카툰 렌더링카툰 렌더링
카툰 렌더링
 
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
 
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
 
후처리알아보기
후처리알아보기후처리알아보기
후처리알아보기
 
Pitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONYPitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONY
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
 
Boost 라이브리와 C++11
Boost 라이브리와 C++11Boost 라이브리와 C++11
Boost 라이브리와 C++11
 

More from 선협 이

웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격선협 이
 
MongoDB 이해하기
MongoDB 이해하기MongoDB 이해하기
MongoDB 이해하기선협 이
 
Deep dive into Vue.js
Deep dive into Vue.jsDeep dive into Vue.js
Deep dive into Vue.js선협 이
 
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막선협 이
 
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017선협 이
 
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2ndVue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd선협 이
 
Reactive Programming With Swift
Reactive Programming With SwiftReactive Programming With Swift
Reactive Programming With Swift선협 이
 
Tour of Vue.js
Tour of Vue.jsTour of Vue.js
Tour of Vue.js선협 이
 
Functional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwiftFunctional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwift선협 이
 
MSBuild + Git + Jenkins
MSBuild + Git + JenkinsMSBuild + Git + Jenkins
MSBuild + Git + Jenkins선협 이
 

More from 선협 이 (10)

웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격
 
MongoDB 이해하기
MongoDB 이해하기MongoDB 이해하기
MongoDB 이해하기
 
Deep dive into Vue.js
Deep dive into Vue.jsDeep dive into Vue.js
Deep dive into Vue.js
 
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
 
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
 
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2ndVue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
 
Reactive Programming With Swift
Reactive Programming With SwiftReactive Programming With Swift
Reactive Programming With Swift
 
Tour of Vue.js
Tour of Vue.jsTour of Vue.js
Tour of Vue.js
 
Functional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwiftFunctional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwift
 
MSBuild + Git + Jenkins
MSBuild + Git + JenkinsMSBuild + Git + Jenkins
MSBuild + Git + Jenkins
 

Visual Studio 2013 원격 디버깅

  • 2. 1. 원격 디버거 소개 2. 설치 3. 구성 방법 4. 디버깅 하기 5. 참고 블로그 Visual Studio 설치? 필요 없어요~ 멀리 떨어져 있어도 비싼 라이센스 없어도
  • 3.  원격 디버거란?  말 그대로 한 컴퓨터에 있는 프로그램을 다른 작업 공간에서 디버깅 하는 것  왜 원격 디버깅을 하죠?  서버 컴퓨터에 Visual Studio를 설치하기 위해서는 라이센스 비용이 필요합니다. 그 비용을 절약하기 위해서가 첫 번째 이유입니다.  두 번째 이유는 서버에 Visual Studio를 설치하여 작업하는 것 보다 개발자 로컬에서 원격으로 접속하여 디버깅 하는 것이 더 효율 적이기 때문입니다.  해당 PPT에서는 Visual Studio 2013을 기준으로 설명합니다. 원격 디버거 소개
  • 4.  준비물  Visual Studio가 설치되어 있는 로컬 PC  디버깅을 할 파일이 있는 원격지 PC 1. 원격지 PC에 C:Remote 폴더를 만듭니다.  원격 디버깅 할 경로를 정하는 것으로 다른 경로로 설정하더라도 상관없습니다. 2. 원격지 PC의 C:WindowsSystem32 폴더에서 다음 5개의 파일을 C:Remote 폴더에 복사합니다. • mfc120.dll, msvcp120.dll, msvcr120.dll, msvcp120d.dll, msvcr120d.dll 3. 로컬 PC에서 디버깅 할 실행파일과 pdb파일을 원격지 PC의 C:Remote 폴더에 복사합니다. 4. 로컬 PC의 C:Program Files (x86)Microsoft Visual Studio 12.0Common7IDE에 있는 Remote Debugger 폴더를 원격지 PC의 C:Remote 폴더에 복사합니다. 5. C:RemoteRemote Debuggerx64에 있는 msvsmon.exe를 실행하고 Tools -> Options에서 포트를 설정합니다. 설치
  • 5. 1. Visual Studio 2013을 실행한 후 프로젝트 옵션을 실행합니다. 구성 속성 -> 디버깅에서 실행할 디버거를 원격 Windows 디버거로 변경합니다. 2. 다음과 같이 설정합니다. 구성 방법
  • 6. 1. 구성까지 하고 나면 디버깅을 하려고 하면 다음과 같은 로그인 창이 뜹니다. 2. 로그인에 성공하면 서버에서 접속 확인을 할 수 있고 디버깅을 시작 할 수 있습니다. 디버깅 방법 서버 PC 로컬 PC