2011-02-08 3 views
0

InstallShield 2010을 사용하여 제품 패치를 만듭니다. 많은 변경 사항이 있으므로 패치 디자인보기를 사용하여 원본 제품 출시 MSI와 현재 MSI가 다른 MSP 패치를 만듭니다. 내 설치 관리자는 XML 파일 변경 InstallShield 기능을 사용하여 설치 중에 XML 파일 값을 작성합니다. 작성된 값 중 일부는 설치 중에 사용자 정의 대화 상자를 통해 수집됩니다. 내 문제는 MSP 패치 설치 중에 표시된 사용자 대화 상자가 없기 때문에 패치를 적용 할 때이 값이 NULL입니다. 값은 사용자 입력에서 채워지지 않으므로 MSP는 공백 값을 XML에 넣습니다.이 값은 기본적으로 사용자가 초기 설치 중에 지정한 값을 삭제합니다. 패치를 설치하는 동안 사용자에게 필요한 값을 다시 수집 할 수 있도록 대화 상자를 패치에 추가 할 수 있습니까?Installshield 사용자 입력 값을 사용하여 XML 파일 변경 패치

내가 생각한 한 가지는 부트 스트 래퍼 배치 스크립트를 작성하고 속성 값 = "VALUE"의 저장 위치에서 msiexec.exe 호출을 통해 속성 값을 전달하는 것이 었습니다. 그러나 몇 가지 대안을 찾으려고했습니다.

답변

1

일반적으로 검색어에 현재 값을 속성으로 읽게해야합니다. InstallShield에서 XML 시스템 검색 지원을 사용하여이 작업을 수행 할 수도 있고 사용자 정의 작업을 작성해야 할 수도 있습니다. XML 시스템 검색 지원은 XML 파일 변경과 마찬가지로 네임 스페이스를 처리하지 않습니다.

업그레이드 된 설치 프로그램과 패치에이 변경 사항을 적용한 후에는 XML 변경 사항을 실행하기 전에 패치에서 이와 유사한 검색을 실행해야합니다. 전체 UI 유지 관리 시나리오에서 이미 채워진 기본값으로 표시되는 이점이 있지만이를 확인해야합니다.

+0

아, 내 XML 파일을 다시 검색하지 않아. 좋은 생각이야. 나는 그것을 줄 것이다, 고마워! –

+0

그 다음에 더 나아질 것입니다. PROPTEMP로 XML을 읽고 PROPREAL에 값이없는 경우에만 PROPREAL에 할당하는 Type 51 사용자 지정 작업이 있어야합니다. 이렇게하면 명령 줄에서 PROPREAL = FOO를 전달할 수 있고 XML 검색에서 지워지지 않게 할 수 있습니다. 기억하지만 아직 무시할 수있는 속성 패턴입니다. –

+0

Michael, 불행히도 일부 속성은 XML 노드 값의 하위 문자열이므로 사용자 정의 속성에 대한 XML 파일을 다시 검색하면 작동하지 않습니다. http : // [USERDEFINED]/웹 사이트. 내가 설치 한 유일한 옵션은 사전 설치된 XML 필드 값을 구문 분석하기위한 사용자 정의 코드를 작성하거나 패치 설치 중에 사용자 정의 대화 상자를 표시하는 방법을 찾는 것입니다. –

관련 문제