Microsoft MVP성태의 닷넷 이야기
오류 유형: 160. Visual Studio 2010 Team Explorer 설치 오류 [링크 복사], [링크+제목 복사],
조회: 25728
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Visual Studio 2010 Team Explorer 설치 오류

윈도우 8에서 Visual Studio 2010을 새로 설치했는데, 한가지 문제가 발생했습니다.

다소 심각한데, "Team Explorer"가 인식되지 않아서 TFS에 등록된 프로젝트를 열려고 하면 다음과 같은 오류가 발생했습니다.

tfs_explorer_1.png

Source Control Plug-in

The project or solution you opened requires a source control plug-in that is unavailable at this time.

To enable source control, please confirm that the plu-in has been installed correctly and then restart Microsoft Visual Studio.


심지어, tf.exe를 실행할 때 다음과 같은 오류 메시지를 확인할 수 있습니다.

c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE>tf workspace
Method not found: 'System.String Microsoft.TeamFoundation.VersionControl.Client.Workspace.get_OwnerDisplayName()'.

확인을 위해 .NET Reflector로 "C:\Windows\assembly\GAC_MSIL\Microsoft.TeamFoundation.VersionControl.Client\10.0.0.0__b03f5f7f11d50a3a\Microsoft.TeamFoundation.VersionControl.Client.dll" 파일을 열어 보니 정말로 "OwnerDisplayName"이라는 속성은 존재하지 않았습니다.

tfs_explorer_2.png

혹시나 싶어, 비교를 위해 team explorer가 잘 실행되고 있는 PC 의 "Microsoft.TeamFoundation.VersionControl.Client.dll" 을 봐도 역시 "OwnerDisplayName" 라는 속성은 존재하지 않았습니다. 게다가 2개의 DLL 모두 버전이 10.0.40219.1로 동일했습니다. 오호... 그렇다면 이번에는 tf.exe 의 버전을 비교해 보았습니다.

tfs_explorer_3.png

이 부분에서 다소 이해가 되지 않습니다. "정상동작"하고 있는 tf.exe는 오히려 버전이 10.0.30319.1 로 DLL 버전(10.0.40219.1)과 맞지 않습니다. 반면, 정상동작하고 있지 않는 제 컴퓨터의 tf.exe는 DLL 버전과 동일했습니다.

상황을 정리해 보면,

Visual Studio 2010 최초 설치: 10.0.30319.1 버전이 적용됨
	Microsoft.TeamFoundation.VersionControl.Client.dll: 버전 10.0.30319.1
	tf.exe: 버전 10.0.30319.1

SP1 설치: 10.0.40219.1 버전이 적용됨
	Microsoft.TeamFoundation.VersionControl.Client.dll: 버전 10.0.40219.1
	tf.exe: 버전 10.0.40219.1

이렇게 버전이 맞춰집니다. 하지만, 정작 40219 버전의 tf.exe는 40219 버전의 dll 과 연동이 되지 않는 것입니다. 반대로 30319 버전의 tf.exe는 정상 실행되고.




해결은 어떻게 했을까요?

일단, SP1을 제거하고 Visual Studio 2010도 제거한 다음 다시 설치를 했습니다. 그렇게 했더니 Visual Studio 에서 Team Explorer가 보이지 않는 문제는 해결했지만 여전히 "c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\TF.exe" 파일은 40219 버전이었고 실행시 get_OwnerDisplayName 속성 오류는 동일하게 나타났습니다. 그래도 Visual Studio 2010 에서 TFS 연결/사용하는 것에는 아무런 지장이 없습니다.

문제가 된다면, Symbol/Source 서버를 이용하는 상황입니다.

TFS Team Build + Source Server = 소스 코드 디버깅
; https://www.sysnet.pe.kr/2/0/600

위의 글에도 나오지만, Visual Studio는 내부적으로 외부 소스 코드를 가져올 때 tf.exe 를 호출합니다. 허긴... 그렇게 어려운 상황도 아닙니다. 그냥 다른 컴퓨터에서 30319 버전의 tf.exe 를 복사해와서 해결하면 되니까! ^^




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







[최초 등록일: ]
[최종 수정일: 8/19/2012]

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

비밀번호

댓글 작성자
 




... 106  107  108  109  110  111  [112]  113  114  115  116  117  118  119  120  ...
NoWriterDateCnt.TitleFile(s)
11157정성태3/22/201722638.NET Framework: 648. Dictionary<TKey, TValue>를 deep copy하는 방법파일 다운로드1
11156정성태3/21/201723929.NET Framework: 647. 닷넷(C#) 코드로 인증서 요청 코드 만드는 방법파일 다운로드1
11155정성태3/21/201724212.NET Framework: 646. SslStream의 CipherAlgorithm 선택이 가능할까요?파일 다운로드1
11154정성태3/5/201730512VC++: 109. DLL에서 STL 객체를 인자/반환값으로 갖는 함수를 제공할 때, 그 함수를 외부에서 사용하는 경우 비정상 종료한다면? [2]파일 다운로드1
11153정성태3/5/201729996VC++: 108. DLL에 정의된 C++ template 클래스의 복사 생성자 문제파일 다운로드1
11152정성태3/4/201724245VC++: 107. VirtualAlloc, HeapAlloc, GlobalAlloc, LocalAlloc, malloc, new의 차이점 [1]파일 다운로드1
11151정성태3/3/201724429VC++: 106. DLL 개발자가 주의해야 할 Secure CRT 함수 사용 [1]파일 다운로드1
11150정성태2/21/201720395.NET Framework: 645. Visual Studio Fakes 기능에서 Shim... 클래스가 생성되지 않는 경우 [5]
11149정성태2/21/201724224오류 유형: 378. A 64-bit test cannot run in a 32-bit process. Specify platform as X64 to force test run in X64 mode on X64 machine.
11148정성태2/20/201723359.NET Framework: 644. AppDomain에 대한 단위 테스트 시 알아야 할 사항
11147정성태2/19/201721783오류 유형: 377. Windows 10에서 Fake 어셈블리를 생성하는 경우 빌드 시 The type or namespace name '...' does not exist in the namespace 컴파일 오류 발생
11146정성태2/19/201721038오류 유형: 376. Error VSP1033: The file '...' does not contain a recognized executable image. [2]
11145정성태2/16/201722512.NET Framework: 643. 작업자 프로세스(w3wp.exe)가 재시작되는 시점을 알 수 있는 방법 - 두 번째 이야기 [4]파일 다운로드1
11144정성태2/6/201725931.NET Framework: 642. C# 개발자를 위한 Win32 DLL export 함수의 호출 규약 (부록 1) - CallingConvention.StdCall, CallingConvention.Cdecl에 상관없이 왜 호출이 잘 될까요?파일 다운로드1
11143정성태2/5/201723428.NET Framework: 641. [Out] 형식의 int * 인자를 가진 함수에 대한 P/Invoke 호출 방법파일 다운로드1
11142정성태2/5/201731289.NET Framework: 640. 닷넷 - 배열 크기의 한계 [2]파일 다운로드1
11141정성태1/31/201725730.NET Framework: 639. C# 개발자를 위한 Win32 DLL export 함수의 호출 규약 (4) - CLR JIT 컴파일러의 P/Invoke 호출 규약 [1]파일 다운로드1
11140정성태1/27/201721126.NET Framework: 638. RSAParameters와 RSA파일 다운로드1
11139정성태1/22/201724054.NET Framework: 637. C# 개발자를 위한 Win32 DLL export 함수의 호출 규약 (3) - x64 환경의 __fastcall과 Name mangling [1]파일 다운로드1
11138정성태1/20/201722486VS.NET IDE: 113. 프로젝트 생성 시부터 "Enable the Visual Studio hosting process" 옵션을 끄는 방법 - 두 번째 이야기 [3]
11137정성태1/20/201720635Windows: 135. AD에 참여한 컴퓨터로 RDP 연결 시 배경 화면을 못 바꾸는 정책
11136정성태1/20/201720230오류 유형: 375. Hyper-V 내에 구성한 Active Directory 환경의 시간 구성 방법 - 두 번째 이야기
11135정성태1/20/201721067Windows: 134. Windows Server 2016의 작업 표시줄에 있는 시계가 사라졌다면? [1]
11134정성태1/20/201728643.NET Framework: 636. System.Threading.Timer를 이용해 타이머 작업을 할 때 유의할 점 [5]파일 다운로드1
11133정성태1/20/201724739.NET Framework: 635. C# 개발자를 위한 Win32 DLL export 함수의 호출 규약 (2) - x86 환경의 __fastcall [1]파일 다운로드1
11132정성태1/19/201736573.NET Framework: 634. C# 개발자를 위한 Win32 DLL export 함수의 호출 규약 (1) - x86 환경에서의 __cdecl, __stdcall에 대한 Name mangling [1]파일 다운로드1
... 106  107  108  109  110  111  [112]  113  114  115  116  117  118  119  120  ...