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

저 같은 경우에. VS.NET 2005와 SQL 2005에 관심이 많아서 제가 직접 쓰는 컴퓨터와 집에 있는 웹 서버를 틈틈이 업그레이드된 베타가 나올 때마다 설치를 해보고 있습니다.

물론, ^^; 그렇다고 해서 해당 제품들과 관계된 공부를 많이 하는 것은 아니지만... 그래도 베타를 쓰면서 먼저 익숙해진다는 것에 의의를 두고 그렇게 해보는데요.

아직 베타 버전이다 보니 설치/제거가 다소 미숙한 부분도 있습니다. 더군다나, VS.NET 2005와 SQL Server 2005에서 쓰이는 .NET Framework 2.0 자체도 베타 버전인데다 2가지 제품에서 서로 다른 빌드의 .NET 2.0을 쓰는 관계로 설치/제거 작업이 더더욱 어려운 상황인데요.

암튼... 저 같은 경우, 기존 베타를 제거하고 새로운 베타를 설치할 때 다음과 같은 오류를 종종 만나곤 합니다.


SQL 2005 베타에서는, 기존 베타 버전이 완전히 제거되지 않은 경우,
"The follwing compnents that you chose to install are already installed on the machine. To view a report of available options and alternatives click on Details" 위의 메시지가 나오면서 새로 나온 베타의 기능 중에서 위의 메시지와 함께 나열되지 않은 제품들만 설치되게 됩니다. 설치 전에, 기존 베타 버전의 유무를 판단해 주기 때문에 설치 중간에 오류가 나는 경우는 거의 없습니다.

반면에, VS.NET 2005 베타 제품 설치 시에는 사정이 좀 다릅니다. 거의 대부분 설치 오류가 중간에 발생하죠. ^^; 부가적으로, 짜증까지 나게 되는데요. 다음의 오류를 예로 들면 좋을 것 같습니다.

***EndOfSession*** [03/04/05,10:01:23] Microsoft .NET Framework 2.0 Beta 2: [2] Error code 1638 for this component means "Another version of this product is already installed. Installation of this version cannot continue. To configure or remove the existing version of this product, use Add/Remove Programs on the Control Panel.
참고로, 위의 내용은 설치 도중 에러가 났을 때 설치 화면에서 제공되는 "View Error Log" 링크를 통해서 본 내용인데, 제가 권해드리고 싶은 것은 해당 로그 파일과 동일한 폴더에 있는 다른 에러 로그 파일들을 꼭 살펴보시라는 점입니다. 왜냐면, 실제로 위의 로그에서는 .NET 2.0의 다른 버전이 설치되었다는 보고인데, 실제로 좀 더 상세한 로그 파일을 살펴보면,

[03/04/05,11:48:02] Microsoft Visual J# .NET Redistributable Package 2.0 Beta: [2] Error code 1638 for this component means "Another version of this product is already installed. Installation of this version cannot continue. To configure or remove the existing version of this product, use Add/Remove Programs on the Control Panel. "
[03/04/05,11:48:03] Microsoft Visual J# .NET Redistributable Package 2.0 Beta: [2] Setup Failed on component Microsoft Visual J# .NET Redistributable Package 2.0 Beta ***EndOfSession***

위와 같은 정보를 얻을 수 있었습니다. 저 같은 경우에는 J# Runtime 2.0이 설치되어 있었다는 것이죠.


어쨌든, 위의 2가지 경우에서처럼... 기존에 설치된 베타 버전으로 인해 새로운 베타 버전이 정상적으로 설치가 안되는 경우가 있는데요. 이런 경우, "프로그램 추가/삭제"에서 해당 제품을 제거해 주시면 좋겠지만, 문제는 ... 베타 버전의 설치/제거 쪽이 완벽하지 않아서 프로그램 추가/삭제에는 없는 경우도 있다는 것입니다.

그럼... 어떻게 해결해야 할까요? ^^

VS.NET 2003/2005에서 MSI 프로젝트 파일을 다뤄보신 분은 아시겠지만, 설치 조건(condition)을 지정하는 방법으로 특정 레지스트리 노드로 판단하는 것을 아실 것입니다. 음.... 대답이 너무 간단한가요?

그렇다고 해서 어떤 값인지는 msi 파일을 분석하면 알 수 있겠지만... 제가 택한 방법은 그냥 레지스트리에서 관련 항목을 찾아서 모두 삭제하는 것이었습니다.
다음 화면에서 보시는 것처럼.

클릭하시면 큰 그림으로 보실 수 있습니다.

어떤 키값으로 검색해야 할지는 ... ^^ 개인의 감각에 맡기겠습니다.






[최초 등록일: ]
[최종 수정일: 7/10/2021]

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

비밀번호

댓글 작성자
 



2005-03-04 03시45분
참고로, Install 관련 Product 관련 레지스트리 키를 삭제하면 되는 것도 있고... 그렇지 않고 Software 쪽 레지스트리 키를 지워야 되는 경우도 있습니다.
techsharer

... 61  62  [63]  64  65  66  67  68  69  70  71  72  73  74  75  ...
NoWriterDateCnt.TitleFile(s)
12399정성태11/5/202019711.NET Framework: 961. C# 9.0 - (10) 대상으로 형식화된 조건식(Target-typed conditional expressions)파일 다운로드1
12398정성태11/4/202019864오류 유형: 678. Windows Server 2008 R2 환경에서 Powershell을 psexec로 원격 실행할 때 hang이 발생하는 문제
12397정성태11/4/202019962.NET Framework: 960. C# - 조건 연산자(?:)를 사용하는 경우 달라지는 메서드 선택 사례파일 다운로드1
12396정성태11/3/202016344VS.NET IDE: 152. Visual Studio - "Tools" / "External Tools..."에 등록된 외부 명령어에 대한 단축키 설정 방법
12395정성태11/3/202019745오류 유형: 677. SSMS로 DB 접근 시 The server principal "..." is not able to access the database "..." under the current security context.
12394정성태11/3/202017234오류 유형: 676. cacls - The Recycle Bin on ... is corrupted. Do you want to empty the Recycle Bin for this drive?
12393정성태11/3/202016103오류 유형: 675. Visual Studio - 닷넷 응용 프로그램 디버깅 시 Disassembly 창에서 BP 설정할 때 "Error while processing breakpoint." 오류
12392정성태11/2/202020715.NET Framework: 959. C# 9.0 - (9) 레코드(Records) [4]파일 다운로드1
12390정성태11/1/202021277디버깅 기술: 173. windbg - System.Configuration.ConfigurationErrorsException 예외 분석 방법
12389정성태11/1/202020288.NET Framework: 958. C# 9.0 - (8) 정적 익명 함수 (static anonymous functions)파일 다운로드1
12388정성태10/29/202018524오류 유형: 674. 어느 순간부터 닷넷 응용 프로그램 실행 시 System.Configuration.ConfigurationErrorsException 예외가 발생한다면?
12387정성태10/28/202019465.NET Framework: 957. C# - static 필드의 정보가 GC Heap에 저장될까요? [3]파일 다운로드1
12386정성태10/28/202020601Linux: 34. 사용자 정보를 함께 출력하는 리눅스의 ps 명령어 사용 방법
12385정성태10/28/202017775오류 유형: 673. openssl - req: No value provided for Subject Attribute CN, skipped
12384정성태10/27/202020598오류 유형: 672. AllowPartiallyTrustedCallers 특성이 적용된 어셈블리의 struct 멤버 메서드를 재정의하면 System.Security.VerificationException 예외 발생
12383정성태10/27/202020742.NET Framework: 956. C# 9.0 - (7) 패턴 일치 개선 사항(Pattern matching enhancements) [3]파일 다운로드1
12382정성태10/26/202018329오류 유형: 671. dotnet build - The local source '...' doesn't exist
12381정성태10/26/202020355VC++: 137. C++ stl map의 사용자 정의 타입을 key로 사용하는 방법 [1]파일 다운로드1
12380정성태10/26/202015655오류 유형: 670. Visual Studio - Squash_FailureCommitsReset
12379정성태10/21/202022121.NET Framework: 955. .NET 메서드의 Signature 바이트 코드 분석 [1]파일 다운로드2
12378정성태10/15/202020605.NET Framework: 954. C# - x86/x64 환경에 따라 달라지는 P/Invoke 함수의 export 이름 [1]파일 다운로드1
12377정성태10/15/202021412디버깅 기술: 172. windbg - 파일 열기 시점에 bp를 걸어 파일명 알아내는 방법(Managed/Unmanaged)
12376정성태10/15/202017021오류 유형: 669. windbg - sos의 name2ee 명령어 실행 시 "Failed to request module list." 오류
12375정성태10/15/202018244Windows: 177. 윈도우 탐색기에서 띄우는 cmd.exe 창의 디렉터리 구분 문자가 'Yen(¥)' 기호로 나오는 경우 [1]
12374정성태10/14/202024320.NET Framework: 953. C# 9.0 - (6) 함수 포인터(Function pointers) [1]파일 다운로드2
12373정성태10/14/202017844.NET Framework: 952. OpCodes.Box와 관련해 IL 형식으로 직접 코딩 시 유의할 점
... 61  62  [63]  64  65  66  67  68  69  70  71  72  73  74  75  ...