2011-03-29 4 views
0

저는 이미 우리 응용 프로그램의 설치 프로그램을 가지고 있습니다. 하지만 그것은 exe 파일입니다. 그것은 몇 년 전에 만들어졌습니다 .. 물론 응용 프로그램이 업데이 트되었습니다. 우리는 새로운 dll 파일을 등록하고 서비스 (윈도우)를 설치하기 위해 bat 파일을 사용했습니다. 그러나 우리는 설치 프로그램이 bat-file이 아닌이 모든 것을하고 싶어합니다. 우리는 wix techology를 선택했습니다. 내가 약 <Patch> 노드에 대해 읽었지만 이전 버전에서 msi가 필요해. 나는 간단한 응용 프로그램을 설치하면 서비스가 중지되고 응용 프로그램의 디렉토리에 dll을 등록하고 서비스를 설치한다고 생각합니다. 하지만 난 아무 문제없이 파일을 덮어 씁니 까?wix - installer 또는 패치 설치자

+0

설치하기 전에 이전 EXE 패키지를 제거하는 새 버전의 전체 MSI를 만들 수 있습니다. 이렇게하면 나중에 MSI 패치를 시작할 수 있습니다. –

답변

0

파일 번호 버전이 낮 으면 실행 파일과 같은 버전 지정 파일이 자동으로 덮어 씁니다.

Copy if not exist in WiX도 참조하십시오.

2

MSI (설치 프로그램)에 대해서만 MSP (패치)를 만들 수 있습니다. 또한 원본 설치와 동일한 디렉토리에 구성 요소를 설치하는 경우 구성 요소 참조 계산 문제가 발생합니다. 문제는 MSI가 이미 파일이있는 것을보고 공유 리소스로 만들고 사용 카운터를 늘리는 것입니다. 그런 다음 제거 할 때 파일이 제거되지 않도록 제거하고 제거합니다.

새 디렉터리에 설치 한 다음 RemoveFile 테이블을 사용하여 이전 파일을 제거하는 것이 좋습니다. 또한 좋은 CM/버전 관리 방법을 따라하여 버전 거짓말과 같은 해킹에 대해 걱정할 필요가 없도록 제안합니다.

모든 응용 프로그램이 xcopy 파일을 필요로하는 경우 디렉터리와 어쩌면 ShortCut을 설정하면 케이크 조각이어야합니다.