2

VS2010 MSI, 그래서 여기있다 : 웹을 검색 할 때 나는이 문제를 보지 못했다 설치 프로젝트

나는 .msi 파일을 사용 -에 (대 마우스 오른쪽 버튼으로 클릭> 설치 프로젝트에 설치 옵션을) 내 컴퓨터에 "Version 1.0.7"제품을 설치하십시오.

"버전"을 1.0.8로 변경하고 모두 프로젝트 어셈블리 버전/AssemblyFileVersion 속성을 1.0.8.0으로 변경했습니다. 이전 기본 출력을 삭제하고 새 버전을 추가하여 KeyOutput 확장 목록에서 버전이 올바른지 확인했습니다. 모든 어셈블리 버전을 1.0.8.0으로 변경하고 1.0.7.0 (이전 버전)으로 변경 한 후에도 업데이트되지 않았기 때문에이 작업을 수행했습니다.

내 설치 프로젝트를 빌드하고 새 1.0.8 .msi 파일이 포함 된 내 폴더로 이동했습니다. 더블 클릭하여 "응용 프로그램이 이미 있습니다. 기존 프로그램을 프로그램 추가/제거"(또는 유사한) 대화 상자에서 제거하고 설치를 중단했습니다. - 그들은 같은 - 또한
UpgradeCode, 두 버전 사이 진정한에 속성이 설정된
RemovePreviousVersion, 신규/이전 버전과의 동일
제품 코드 :

그래서 나는 나의를 확인했습니다. 이것은 내가 다른 모든 검색에서 일반적으로 해결책으로 발견 되었기 때문에 내가 확인한 것이지만 작동하지 않습니다.

그래서 1.0.7 버전을 설치하지 않았으며 1.0.8을 설치했고 모두 정상적으로 작동했습니다. 아직 문제가 해결되지 않았다. 참고 : "Everyone"에 설치했습니다.

나는 (이 시점에서, 어떤 버전이 /가 설치되어 존재하지 않는다) 다시 1.0.8을 unistalled,이 시도 : 또는은 그것의 마우스 오른쪽 버튼으로 클릭하여 1.0.7을 설치
1. .msi 파일에서 1.0.7을 설치를 설치 프로젝트를 선택하고 "설치"옵션을 사용하십시오.
2. 1.0.8 설치 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 거기에서 설치 옵션을 사용하십시오.
3. 오류/대화 상자가 나타나지 않습니다. 이전 버전이 설치되지 않은 것 같습니다. 설치를 계속하고 새 버전이 컴퓨터에 설치되어 있습니다. 이것이 내가 원하는거야!

여기서 볼 수 있듯이 1.0.7 .msi 파일을 사용하여 설치/수정/업데이트해야 할 때 1.0.8 .msi를 표시 할 수 있어야합니다. "이미 존재합니다"라는 메시지를 표시하고 그냥 덮어 쓰거나 병합하지만 VS2010을 마우스 오른쪽 버튼으로 클릭> 설치 프로젝트에서 설치를 사용하지 않으면 이런 일이 발생하지 않습니다.



도움을 주시면 감사하겠습니다.


편집 굵은

답변

4

변경 두 버전 사이의 제품 코드 추가. major upgrades

+0

이것은 내가 알아 낸 것입니다. 그러나 빌드 번호 만 변경하면 주요 업그레이드로 간주됩니까? 나는 작은 변화를 단지 패치로 간주 할 것이라고 생각했다. – Kcvin

+0

방금 ​​테스트를 많이 했으므로 설치 프로젝트의 버전 번호도 업데이트해야합니다 ... – ganders

0

ProductVersion은 변경하지만 ProductCode는 변경하지 않는 경우를 제외하고는 이전 버전이 시스템에있는 경우에만 REINSTALL을 지정해야합니다. 익스플로러가 실행 한 시나리오를 속성 테이블에 지정하고 사용자 지정 작업으로 지우는 방법이 있지만 실행 프로그램이나 주요 업그레이드를 사용하여 처리하는 방법이 훨씬 더 일반적입니다.