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

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12471정성태1/1/202119579.NET Framework: 992. C# - .NET Core 3.0 이상부터 제공하는 runtimeOptions의 rollForward 옵션 [1]
12470정성태12/30/202019631.NET Framework: 991. .NET 5 응용 프로그램에서 WinRT API 호출 [1]파일 다운로드1
12469정성태12/30/202023885.NET Framework: 990. C# - SendInput Win32 API를 이용한 가상 키보드/마우스 [1]파일 다운로드1
12468정성태12/30/202020679Windows: 186. CMD Shell의 "Defaults"와 "Properties"에서 폰트 정보가 다른 문제 [1]
12467정성태12/29/202020613.NET Framework: 989. HttpContextAccessor를 통해 이해하는 AsyncLocal<T> [1]파일 다운로드1
12466정성태12/29/202018030.NET Framework: 988. C# - 지연 실행이 꼭 필요한 상황이 아니라면 singleton 패턴에서 DCLP보다는 static 초기화를 권장 [1]파일 다운로드1
12465정성태12/29/202021752.NET Framework: 987. .NET Profiler - FunctionID와 연관된 ClassID를 구할 수 없는 문제
12464정성태12/29/202019469.NET Framework: 986. pptfont.exe - PPT 파일에 숨겨진 폰트 설정을 일괄 삭제
12463정성태12/29/202018460개발 환경 구성: 520. RDP(mstsc.exe)의 다중 모니터 옵션 /multimon, /span
12462정성태12/27/202020998디버깅 기술: 177. windbg - (ASP.NET 환경에서 유용한) netext 확장
12461정성태12/21/202020682.NET Framework: 985. .NET 코드 리뷰 팁 [3]
12460정성태12/18/202018707기타: 78. 도서 소개 - C#으로 배우는 암호학
12459정성태12/16/202020322Linux: 35. C# - 리눅스 환경에서 클라이언트 소켓의 ephemeral port 재사용파일 다운로드1
12458정성태12/16/202017447오류 유형: 694. C# - Task.Start 메서드 호출 시 "System.InvalidOperationException: 'Start may not be called on a task that has completed.'" 예외 발생 [1]
12457정성태12/15/202018427Windows: 185. C# - Windows 10/2019부터 추가된 SIO_TCP_INFO파일 다운로드1
12456정성태12/15/202019456VS.NET IDE: 156. Visual Studio - "Migrate packages.config to PackageReference"
12455정성태12/15/202018878오류 유형: 693. DLL 로딩 시 0x800704ec - This Program is Blocked by Group Policy [1]
12454정성태12/15/202019373Windows: 184. Windows - AppLocker의 "DLL Rules"를 이용해 임의 경로에 설치한 DLL의 로딩을 막는 방법 [1]
12453정성태12/14/202020365.NET Framework: 984. C# - bool / BOOL / VARIANT_BOOL에 대한 Interop [1]파일 다운로드1
12452정성태12/14/202020714Windows: 183. 설정은 가능하지만 구할 수는 없는 TcpTimedWaitDelay 값
12451정성태12/14/202018246Windows: 182. WMI Namespace를 열거하고, 그 안에 정의된 클래스를 열거하는 방법 [5]
12450정성태12/13/202019550.NET Framework: 983. C# - TIME_WAIT과 ephemeral port 재사용파일 다운로드1
12449정성태12/11/202020615.NET Framework: 982. C# - HttpClient에서의 ephemeral port 재사용 [2]파일 다운로드1
12448정성태12/11/202022173.NET Framework: 981. C# - HttpWebRequest, WebClient와 ephemeral port 재사용파일 다운로드1
12447정성태12/10/202020325.NET Framework: 980. C# - CopyFileEx API 사용 예제 코드파일 다운로드1
12446정성태12/10/202021334.NET Framework: 979. C# - CoCreateInstanceEx 사용 예제 코드파일 다운로드1
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...