Microsoft MVP성태의 닷넷 이야기
Team Foundation Server: 13. Sysnet 웹 사이트 TFS Migration [링크 복사], [링크+제목 복사],
조회: 25848
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Visual SourceSafe 2005 로 되어 있던 Sysnet 웹 사이트의 소스를 TFS 로 Migration 을 했습니다.
아울러 Team Build 까지 정상적으로 되도록 맞춰놓았습니다.

마이그레이션에 대해서는 다음의 토픽에 조금 나와 있으니 생략하고요. ^^

Visual SourceSafe 에서 TFS Version Control 로 마이그레이션
; https://www.sysnet.pe.kr/2/0/283

여기서는, Team Build 하는 과정에서 겪은 것들만 이야기 해보겠습니다. 사실, sysnet 웹 사이트는 제 개인 블로그 사이트면서도 일종의 ^^ 테스트 사이트입니다.
새로운 것이 나올때 마다 한번씩 적용을 해보는 ^^ 훌륭한 예제 사이트 인데요. 그러다 보니, VS.NET Beta2 때부터 실습해왔던 Web Site Project 구조라서 그리 쉽게 Team Build 가 되지는 않았습니다. ^^

맨 먼저 Team Build 를 하니 다음과 같은 오류가 발생했습니다.

Project: SysnetSiteSolution.sln, Configuration: Release, Any CPU
   E:\TeamBuild\SysnetSite\ReleaseDeploy\Sources\SysnetSiteSolution\SysnetSiteSolution.sln(0,0): 
       error MSB3021: 
           Unable to copy file "E:\TeamBuild\SysnetSite\ReleaseDeploy\Binaries\Release\DxEF2005.dll" 
                                   to "MyWeb\MyWebSolution\MyWebProjects\sysnetWeb\\Bin\DxEF2005.dll". 
           Access to the path 'MyWeb\MyWebSolution\MyWebProjects\sysnetWeb\\Bin\DxEF2005.dll' is denied.

솔직히, 왜 이런 현상이 일어나는지 세심하게 파고들지는 않았습니다. 단지, 제가 한 일이라고는 Web Site 의 bin 폴더에 있는 DxEF2005.dll 을 삭제한 후, 다시 프로젝트 참조로 추가하는 것으로 해결했습니다.



위의 문제를 수정하고 나니, 이젠 다음과 같은 오류가 발생했습니다.

ASPNETCOMPILER(0,0): error ASPRUNTIME: 
        The current identity (THEMOST\TFSSETUP) does not have write access 
                  to 'D:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files'.

이상하군요. Team Build 도중에 shadow-copy 가 발생하다니. 암튼, 별도로 구성되어 있던 Build Server 에 위의 폴더를 만들어주고, TFSSetup 계정에 쓰기 권한을 주었습니다.



이젠 다음과 같은 오류가 발생합니다.

/published/interests/sedona2004.ascx(2,0): 
    error ASPPARSE: Could not load file or assembly 
    'Microsoft.Web.UI.WebControls, Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. 
    The system cannot find the file specified.
    
/published/interests/sedona2004.ascx(7,0): error ASPPARSE: Unknown server tag 'iewc:TabStrip'.

근데, .NET 2.0 에서의 대체 컨트롤들로 인해 "Microsoft Internet WebControls" 에 대한 지원을 완전히 중단을 해버렸군요.
찾기도 힘듭니다. ^^; 겨우 찾아낸 URL 이 다음과 같습니다.

Internet Explorer Web Controls Download Packages
; http://www.asp.net/IEWebControls/Download.aspx

그런데 이걸 어쩝니까? ^^; 컴파일된 바이너리 유형이 아니라 완전 Full Source 를 제공해 버리네요. 근데 SNK 파일은 빠져 있으니, 제 웹 사이트의 강력한 서명으로 연결된 것은 복원하기가 힘들 것 같습니다.
그래서 그냥 제 컴퓨터에 있는 "C:\Program Files\Microsoft Internet Explorer WebControls\Microsoft.Web.UI.WebControls.dll" 파일을 복사해다가 Build Server 의 GAC 에 넣어버렸습니다. ^^;



마지막으로, 다음과 같이 SHDocVw 에 대한 interop 관련 DLL 들이 없다고 불평합니다.

Solution: SysnetSiteSolution.sln, Project: DxEF2005.Web.Controls.csproj, Compilation errors and warnings
D:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(0,0): 
    warning MSB3245: Could not resolve this reference. 
         Could not locate the assembly "Interop.SHDocVw". 
         Check to make sure the assembly exists on disk.
         If this reference is required by your code, you may get compilation errors.
           
D:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(0,0): 
    warning MSB3245: Could not resolve this reference. 
        Could not locate the assembly "AxInterop.SHDocVw". 
        Check to make sure the assembly exists on disk. 
        If this reference is required by your code, you may get compilation errors.
        
Design\XsltControl\CtlHTMLXMLView.cs(26,13): 
    error CS0246: The type or namespace name 'AxSHDocVw' could not be found (are you missing a using directive or an assembly reference?)

DxEF2005.Web.Controls.csproj 파일을 메모장으로 열어보니, Interop.SHDocVw 와 AxInterop.SHDocVw 에 대한 참조 경로가 다음과 같이 되어 있습니다.

    <Reference Include="AxInterop.SHDocVw, Version=1.1.0.0, Culture=neutral, PublicKeyToken=f918441c6626face">
      <SpecificVersion>False</SpecificVersion>
        <HintPath>..\..\Deploy\AxInterop.SHDocVw.dll</HintPath>
    </Reference>
    
    <Reference Include="Interop.SHDocVw, Version=1.1.0.0, Culture=neutral, PublicKeyToken=f918441c6626face">
        <SpecificVersion>False</SpecificVersion>
		<HintPath>..\..\Deploy\Interop.SHDocVw.dll</HintPath>
	</Reference>

가만 보니, Deploy 경로는 Team Build 경로와는 전혀 무관하기 때문에, SHDocVw 에 대한 참조를 제거한 다음 다시 참조를 걸었습니다.
다시 빌드하니, 이제서야 제대로 Team Build 가 아무런 경고없이 완료되었습니다.




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






[최초 등록일: ]
[최종 수정일: 11/9/2019]

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)
11025정성태8/12/201622358개발 환경 구성: 294. .NET Core 프로젝트에서 "Copy to Output Directory" 처리 [1]
11024정성태8/12/201621668오류 유형: 350. "nProtect GameMon" 실행 중에는 Visual Studio 디버깅이 안됩니다! [1]
11023정성태8/10/201623221개발 환경 구성: 293. Azure 구독 후 PaaS 서비스 만들어 보기
11022정성태8/10/201623873개발 환경 구성: 292. Azure Cloud Service 배포시 사용자 정의 작업을 추가하는 방법
11021정성태8/10/201620898오류 유형: 349. System.Runtime.Remoting.RemotingException - Type '..., ..., Version=..., Culture=neutral, PublicKeyToken=null' is not registered for activation [2]
11020정성태8/10/201623634VC++: 98. 원본과 대상 버퍼가 같은 경우 memcpy, wmemcpy 주의점
11019정성태8/10/201640292기타: 60. 도서: 시작하세요! C# 6.0 프로그래밍: 기본 문법부터 실전 예제까지 (2쇄 정오표)
11018정성태8/9/201624768.NET Framework: 600. 단일 메서드 내에서의 할당으로 알아보는 자바와 닷넷의 GC 차이점 [1]
11017정성태8/9/201626889웹: 33. HTTP 쿠키에 한글 값을 설정하는 방법
11016정성태8/7/201624033개발 환경 구성: 291. Windows Server Containers 소개
11015정성태8/7/201622275오류 유형: 348. Windows Server 2016 TP5에서 Windows Containers의 docker run 실행 시 encountered an error during Start failed in Win32
11014정성태8/6/201623066오류 유형: 347. Hyper-V Virtual Machine Management service Account does not have permission to open attachment
11013정성태8/6/201633868개발 환경 구성: 290. Windows 10에서 경험해 보는 Windows Containers와 docker [4]
11012정성태8/6/201623924오류 유형: 346. Windows 10에서 Windows Containers의 docker run 실행 시 encountered an error during CreateContainer failed in Win32 발생
11011정성태8/6/201625556기타: 59. outlook.live.com 메일 서비스의 아웃룩 POP3 설정하는 방법
11010정성태8/6/201622884기타: 58. Outlook에 설정한 SMTP/POP3(예:천리안 메일) 계정 암호를 잊어버린 경우
11009정성태8/3/201628079개발 환경 구성: 289. 2016-08-02부터 시작된 윈도우 10 1주년 업데이트에서 Bash Shell 사용 [8]
11008정성태8/1/201621925오류 유형: 345. 2의 30승 이상의 원소를 갖는 경우 버그가 발생하는 이진 검색(Binary Search) 코드
11007정성태8/1/201623655오류 유형: 344. RDP ActiveX 컨트롤로 특정 PC에 연결할 수 없을 때, 오류 상황을 해결하기 위한 팁파일 다운로드1
11006정성태7/22/201626598개발 환경 구성: 288. SSL 인증서를 Azure Cloud Service에 적용하는 방법
11005정성태7/22/201625258개발 환경 구성: 287. Let's Encrypt 인증서 업데이트 주기: 90일
11004정성태7/22/201620094오류 유형: 343. Invalid service definition or service configuration. Please see the Error List for more details.
11003정성태7/20/201627378VS.NET IDE: 110. Visual Studio 2015에서 .NET Core 응용 프로그램 개발 [1]
11002정성태7/20/201620854개발 환경 구성: 286. Microsoft Azure 서비스의 구독은 반드시 IE로!
11001정성태7/19/201631940.NET Framework: 599. .NET Core/SDK 설치 및 기본 사용법 [6]
11000정성태7/16/201620629오류 유형: 342. Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64) 설치 시 오류
... 106  107  108  109  110  111  112  113  114  115  [116]  117  118  119  120  ...