Microsoft MVP성태의 닷넷 이야기
오류 유형: 160. Visual Studio 2010 Team Explorer 설치 오류 [링크 복사], [링크+제목 복사],
조회: 24261
글쓴 사람
정성태 (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

비밀번호

댓글 작성자
 




... 196  [197] 
NoWriterDateCnt.TitleFile(s)
16정성태7/17/200319640COM 개체 관련: 3. IE 툴밴드의 위치문제파일 다운로드1
15정성태7/17/200320622VC++: 5. 시행착오 - 클래스 포인터를 void * 로 대입후 delete 하는 경우.
14정성태7/17/200322198VC++: 4. MFC Message 처리 구조
13정성태7/17/200321940VC++: 3. template 활용의 최고 단계!
12정성태5/7/200619527VC++: 2. void func1( MYCLASS *&pBuildingElement ); 선언의 의미
10정성태7/17/200317860기타: 2. 데브피아 사이트의 클럽 서비스 내에 있는 Standard C++ Research
9정성태7/17/200323440기타: 1. Programming Applications for Microsoft Windows 4th Edition
8정성태7/17/200320825COM 개체 관련: 2. CWindowImpl 의 기본 윈도우 클래스 명을 바꾸려면?
7정성태7/17/200323417VS.NET IDE: 1. VC++ 프로파일링 사용법
4정성태7/17/200335775VC++: 1. C++ 클래스 멤버변수 초기화 [3]
3정성태7/17/200321744스크립트: 2. JScript에서의 Blocking 동작을 막아주는 COM 메서드
2정성태6/14/200640637COM 개체 관련: 1. IWebBrowser2와 IHTMLDocument2의 상호 변환 [2]
1정성태7/17/200324799스크립트: 1. IE 의 훌륭한 저장기능 - userData
... 196  [197]