2014-10-02 2 views
1

내가 Windows Installer를 REINSTALLMODE property에 대해 읽고 있었다 나는 코드 V에 대한 질문이Windows 설치 REINSTALLMODE 코드 V

문서화는 말한다 :.. "소스 패키지에서 실행하고 로컬 패키지를 다시 캐시을 사용하지 마십시오 응용 프로그램 또는 기능의 첫 x 째 설치에 대해 v 재설치 옵션 코드를 사용하십시오. "

누구든지 더 나은 설명을 제공 할 수 있습니까?

답변

2

MSI의 캐싱 버전 (\ Windows \ installer가 자주 사용됨)은 수리, 제거 및 이와 유사한 일반 서비스 작업에 사용되는 16 진수입니다. 당신은 아마 그것을 알고 있습니다. 첫 번째 설치시이 파일을 사용하기 때문에 처음에는 설치시 사용하지 않을 것이지만 처음에는 설치시 REINSTALLMODE를 사용하는 것이 좋은 이유가 없습니다. 다시 설치한다는 의미입니다. 제품은 이미 설치되어 있습니다.

+1

때때로 어셈블리 파일 버전을 증가시키지 않는 사람들을 위해 명령 줄과 같이 REINSTALLMODE = "emus"(동일하거나 상위 버전 대체)를 제안합니다 - [** this answer **] (http://stackoverflow.com 참조)/a/1080386/129130). 그것은 amus보다는 경미하게, 그러나 당신이 MSI에있는 보호 한 파일이있는 경우에 새로운 Windows 버전에 동일한 파일 보호 과실을 방아쇠를 당길지도 모른 ㄴ다는 것을 나는 생각한다 - 결코 일어나지 않는 그것을 보았다. 나는 진짜 해결책을 제시해야한다고 생각한다 : 릴리즈 프로세스를 수정하고 버전을 증가 시키거나 [** companion file **] (http://stackoverflow.com/a/1434514/129130)를 사용해야한다. –

+1

REINSTALLMODE = "emus"및 비 증분 어셈블리 버전의 모호성은 야생에 버전이 동일하고 이진 파일이있을 것이라는 것입니다. 나는 이것으로부터 어떤 이득도 상상할 수 없다. 1.0.0. *을 설정하면 빌드 버전이 항상 자동으로 증가합니다. –

2

REINSTALLMODE의 코드는 작은 업데이트 및 사소한 업그레이드, 다시 캐시하고 복구 작업을하는 시나리오에 유용합니다. 이 시나리오에서는 (패치 시나리오와 달리) 기존 패키지를 새 패키지로 바꾸려고 시도하며 캐시 된 복사본도 비슷하게 대체해야합니다. 캐시를 사용하면 원래 미디어를 반드시 필요로하지 않고 수리 및 제거 작업을 수행 할 수 있으며 최신 상태로 유지해야합니다.

Windows Installer가 최초 설치시 .msi를 캐싱 할만큼 똑똑한 이유는 분명하지 않지만 작은 업데이트 나 부 업그레이드가 필요할 때 자동으로 설치하지는 않습니다.

+0

마지막 코멘트는 MSI로 정말 나를 잡아 먹습니다. 불필요하게 복잡한 일을하게 만드는 많은 부조리를 앓고 있습니다. 변형 및 캐싱 (최근 MSI 버전에서이 문제가 수정되었는지 확실하지 않음)을 제대로 처리하지 못하는 경우도 있습니다. 기본 작업을위한 SDK 수준의 복잡성. –