Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Visual Studio IDE 설치 없이 Visual Studio SDK 설치하는 방법

(How to install Visual Studio SDK without IDE installed?)
예를 들어, Visual Studio 2012가 없는 상태에서 Visual Studio 2012 SDK(vssdk_full.exe)를 설치하려 했더니 다음과 같이 창이 뜨면서 더 이상 진행되지 않습니다.

Setup Blocked

Correct the following problems and then run setup again. Click here to see the most common issues and workarounds or here to review the log file.

Microsoft Visual Studio is required, but it is not installed on this computer. Please install it and retry.

물론, 설치해도 상관은 없겠지만... 단순히 SDK만 필요할 뿐인데 해당 SDK에 대응되는 Visual Studio를 설치한다는 것도 좀 우스운 것 같아서 방법을 찾아봤습니다.

다행히 오류 메시지에 나온 %LOCALAPPDATA%\Temp\dd_vssdk_full_...[날짜].log 파일에서 해답을 찾았습니다.

...[생략]...
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Detection Phase
[3FD0:229C][2015-07-08T10:27:19]: MUX:  ---------------
[3FD0:229C][2015-07-08T10:27:19]: Registry key not found. Key = 'SOFTWARE\Microsoft\DevDiv\vs\Servicing\11.0\professional'
[3FD0:229C][2015-07-08T10:27:19]: Registry key not found. Key = 'SOFTWARE\Microsoft\DevDiv\vs\Servicing\11.0\vscore'
[3FD0:229C][2015-07-08T10:27:19]: Setting string variable 'VSComponentPathVariable' to value 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\'
[3FD0:229C][2015-07-08T10:27:19]: Registry key not found. Key = 'SOFTWARE\Microsoft\DevDiv\vssdk\Servicing\11.0\core'
[3FD0:229C][2015-07-08T10:27:19]: Setting numeric variable 'vssdk_DetectKeyExists' to value 0
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Adding package: vssdk_core to package detect list
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Reset Result
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Reset Result
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Adding package: vssdk_coreres to package detect list
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Reset Result
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Reset Result
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Adding package: vssdk_finalizer to package detect list
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Reset Result
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Reset Result
[3FD0:229C][2015-07-08T10:27:19]: Detected package: vssdk_core, state: Absent, cached: None
[3FD0:229C][2015-07-08T10:27:19]: Detected package: vssdk_coreres, state: Absent, cached: None
[3FD0:229C][2015-07-08T10:27:19]: Detected package: vssdk_finalizer, state: Absent, cached: None
[3FD0:229C][2015-07-08T10:27:19]: Condition 'CompatibilityMode = 0' evaluates to false.
[3FD0:229C][2015-07-08T10:27:19]: Condition '(VersionNT < v6.1)' evaluates to false.
[3FD0:229C][2015-07-08T10:27:19]: Condition '( NOT (ProCheck_ProfessionalCore_DetectKey = 1 OR ProCheck_VSCore_DetectKey = 1) ) AND (CurrentOperation = "Install") ' evaluates to true.
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Stop Block: ProfressionalBlock : Microsoft Visual Studio is required, but it is not installed on this computer. Please install it and retry.
[3FD0:229C][2015-07-08T10:27:19]: MUX:  Detect Completed
...[생략]...

그렇군요. ^^ 저것만 맞춰주면 되는 것입니다. 따라서, 다음의 .reg 파일만 등록해 주면 됩니다.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vs\Servicing\11.0\professional]
"Install"=dword:00000001

아니면 수작업으로 직접 regedit.exe에서 "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vs\Servicing\11.0\professional" 경로에 "Install" 이름으로 1 값을 지정해 주면 됩니다.




참고로, 이런 오류에 막혀서 설치가 진행되지 않을 수 있습니다.

Windows Program Compatibility mode is on. Turn it off and then try Setup again.

찾아보니까 다음과 같은 글이 나오는데요.

"Windows Program Compatibility mode is on. Turn it off and then try Setup again." ? How to uninstall an app if this happens.
; http://edd.stefancamilleri.com/2013/02/13/windows-program-compatibility-mode-is-on-turn-it-off-and-then-try-setup-again-how-to-uninstall-an-app-if-this-happens/

제 경우에는 이것과 무관했습니다. 찾고 찾은 끝에... vssdk_full.exe 파일이 암호화 된 경우에도 저런 메시지가 나온다는 것을 발견했고, 결국 "Encrypt contents to secure data" 옵션을 해제한 후에야 설치를 시작할 수 있었습니다.

install_vssdk_without_vs.png




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 9/14/2016]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  9  10  11  12  13  14  [15]  ...
NoWriterDateCnt.TitleFile(s)
13631정성태5/19/202411487Phone: 16. C# MAUI - /Download 등의 공용 디렉터리에 접근하는 방법 [1]
13630정성태5/19/202410247닷넷: 2263. C# - Thread가 Task보다 더 빠르다는 어떤 예제(?)
13629정성태5/18/202410890개발 환경 구성: 710. Android - adb.exe를 이용한 파일 전송
13628정성태5/17/202410146개발 환경 구성: 709. Windows - WHPX(Windows Hypervisor Platform)를 이용한 Android Emulator 가속
13627정성태5/17/202410298오류 유형: 904. 파이썬 - UnicodeEncodeError: 'ascii' codec can't encode character '...' in position ...: ordinal not in range(128)
13626정성태5/15/202412099Phone: 15. C# MAUI - MediaElement Source 경로 지정 방법파일 다운로드1
13625정성태5/14/202410745닷넷: 2262. C# - Exception Filter 조건(when)을 갖는 catch 절의 IL 구조
13624정성태5/12/202410508Phone: 14. C# - MAUI에서 MediaElement 사용파일 다운로드1
13623정성태5/11/20249966닷넷: 2261. C# - 구글 OAuth의 JWT (JSON Web Tokens) 해석파일 다운로드1
13622정성태5/10/202412467닷넷: 2260. C# - Google 로그인 연동 (ASP.NET 예제)파일 다운로드1
13621정성태5/10/202411599오류 유형: 903. IISExpress - Failed to register URL "..." for site "..." application "/". Error description: Cannot create a file when that file already exists. (0x800700b7)
13620정성태5/9/202410703VS.NET IDE: 190. Visual Studio가 node.exe를 경유해 Edge.exe를 띄우는 경우
13619정성태5/7/202411433닷넷: 2259. C# - decimal 저장소의 비트 구조 [2]파일 다운로드1
13618정성태5/6/202410128닷넷: 2258. C# - double (배정도 실수) 저장소의 비트 구조파일 다운로드1
13617정성태5/5/202412473닷넷: 2257. C# - float (단정도 실수) 저장소의 비트 구조파일 다운로드1
13616정성태5/3/202410108닷넷: 2256. ASP.NET Core 웹 사이트의 HTTP/HTTPS + Dual mode Socket (IPv4/IPv6) 지원 방법파일 다운로드1
13615정성태5/3/202412494닷넷: 2255. C# 배열을 Numpy ndarray 배열과 상호 변환
13614정성태5/2/202412294닷넷: 2254. C# - COM 인터페이스의 상속 시 중복으로 메서드를 선언
13613정성태5/1/202410298닷넷: 2253. C# - Video Capture 장치(Camera) 열거 및 지원 포맷 조회파일 다운로드1
13612정성태4/30/202411838오류 유형: 902. Visual Studio - error MSB3021: Unable to copy file
13611정성태4/29/202410469닷넷: 2252. C# - GUID 타입 전용의 UnmanagedType.LPStruct - 두 번째 이야기파일 다운로드1
13610정성태4/28/202411790닷넷: 2251. C# - 제네릭 인자를 가진 타입을 생성하는 방법 - 두 번째 이야기
13609정성태4/27/202411579닷넷: 2250. PInvoke 호출 시 참조 타입(class)을 마샬링하는 [IN], [OUT] 특성파일 다운로드1
13608정성태4/26/202412243닷넷: 2249. C# - 부모의 필드/프로퍼티에 대해 서로 다른 자식 클래스 간에 Reflection 접근이 동작할까요?파일 다운로드1
13607정성태4/25/202412281닷넷: 2248. C# - 인터페이스 타입의 다중 포인터를 인자로 갖는 C/C++ 함수 연동
13606정성태4/24/202412261닷넷: 2247. C# - tensorflow 연동 (MNIST 예제)파일 다운로드1
1  2  3  4  5  6  7  8  9  10  11  12  13  14  [15]  ...