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

1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13843정성태12/13/20244402오류 유형: 938. Docker container 내에서 빌드 시 error MSB3021: Unable to copy file "..." to "...". Access to the path '...' is denied.
13842정성태12/12/20244547디버깅 기술: 205. Windbg - KPCR, KPRCB
13841정성태12/11/20244876오류 유형: 937. error MSB4044: The "ValidateValidArchitecture" task was not given a value for the required parameter "RemoteTarget"
13840정성태12/11/20244457오류 유형: 936. msbuild - Your project file doesn't list 'win' as a "RuntimeIdentifier"
13839정성태12/11/20244894오류 유형: 936. msbuild - error CS1617: Invalid option '12.0' for /langversion. Use '/langversion:?' to list supported values.
13838정성태12/4/20244613오류 유형: 935. Windbg - Breakpoint 0's offset expression evaluation failed.
13837정성태12/3/20245091디버깅 기술: 204. Windbg - 윈도우 핸들 테이블 (3) - Windows 10 이상인 경우
13836정성태12/3/20244651디버깅 기술: 203. Windbg - x64 가상 주소를 물리 주소로 변환 (페이지 크기가 2MB인 경우)
13835정성태12/2/20245097오류 유형: 934. Azure - rm: cannot remove '...': Directory not empty
13834정성태11/29/20245354Windows: 275. C# - CUI 애플리케이션과 Console 윈도우 (Windows 10 미만의 Classic Console 모드인 경우) [1]파일 다운로드1
13833정성태11/29/20245001개발 환경 구성: 737. Azure Web App에서 Scale-out으로 늘어난 리눅스 인스턴스에 SSH 접속하는 방법
13832정성태11/27/20244954Windows: 274. Windows 7부터 도입한 conhost.exe
13831정성태11/27/20244405Linux: 111. eBPF - BPF_MAP_TYPE_PERF_EVENT_ARRAY, BPF_MAP_TYPE_RINGBUF에 대한 다양한 용어들
13830정성태11/25/20245246개발 환경 구성: 736. 파이썬 웹 앱을 Azure App Service에 배포하기
13829정성태11/25/20245212스크립트: 67. 파이썬 - Windows 버전에서 함께 설치되는 py.exe
13828정성태11/25/20244455개발 환경 구성: 735. Azure - 압축 파일을 이용한 web app 배포 시 디렉터리 구분이 안 되는 문제파일 다운로드1
13827정성태11/25/20245122Windows: 273. Windows 환경의 파일 압축 방법 (tar, Compress-Archive)
13826정성태11/21/20245367닷넷: 2313. C# - (비밀번호 등의) Console로부터 입력받을 때 문자열 출력 숨기기(echo 끄기)파일 다운로드1
13825정성태11/21/20245697Linux: 110. eBPF / bpf2go - BPF_RINGBUF_OUTPUT / BPF_MAP_TYPE_RINGBUF 사용법
13824정성태11/20/20244764Linux: 109. eBPF / bpf2go - BPF_PERF_OUTPUT / BPF_MAP_TYPE_PERF_EVENT_ARRAY 사용법
13823정성태11/20/20245330개발 환경 구성: 734. Ubuntu에 docker, kubernetes (k3s) 설치
13822정성태11/20/20245203개발 환경 구성: 733. Windbg - VirtualBox VM의 커널 디버거 연결 시 COM 포트가 없는 경우
13821정성태11/18/20245112Linux: 108. Linux와 Windows의 프로세스/스레드 ID 관리 방식
13820정성태11/18/20245273VS.NET IDE: 195. Visual C++ - C# 프로젝트처럼 CopyToOutputDirectory 항목을 추가하는 방법
13819정성태11/15/20244509Linux: 107. eBPF - libbpf CO-RE의 CONFIG_DEBUG_INFO_BTF 빌드 여부에 대한 의존성
13818정성태11/15/20245350Windows: 272. Windows 11 24H2 - sudo 추가
1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...