2017-02-01 8 views
0

현재 시작 메뉴 아래에 바로 가기가 만들어지는 프로그램 그룹의 이름을 지정하는 옵션으로 설치 프로그램을 확장하려고합니다. 내가 [PROGRAMGROUP_NAME]라는 이름의 지역화 할 수있는 속성을 생성대화 상자를 사용하여 Installshield에서 프로그램 그룹 이름을 정의하는 방법 2015

하면 Installshield 2015을 사용하고

(나는이 다소 시대에 뒤 떨어진 개념이라고 알고 있습니다). 이렇게하면 원하는 기본값으로 설정 한 {ID_STRING46}이 (가) 자동으로 생성됩니다. 여태까지는 그런대로 잘됐다. 위 컨트롤에 연결된 편집 컨트롤로 사용자 지정 대화 상자를 만들었습니다.

이제 까다로운 부분이 있습니다. 바로 가기 아래에서 "프로그램 메뉴"아래에 여러 개의 바로 가기를 배치 할 프로그램 그룹 이름이있는 폴더를 추가하고 싶습니다. [PROGRAMGROUP_NAME]을 입력하면 문자 그대로 이름이됩니다. {ID_STRING46}을 (를) 사용하면 대화 상자에 입력 한 값이 아닌 기본값이 사용됩니다.

덧붙여 말하자면, ID_STRING46의 이름을 더 의미있는 이름으로 변경하려고 시도했을 때 다른 것들은 잘못된 방향으로 시작되었으므로 그대로 두었습니다.

여기에 무슨 문제가 있습니까? 폴더 이름에 사용할 속성 값을 얻으려면 어떻게해야합니까?

지금 사용자 지정 작업을 사용하려고하지만 문제를 정의가

편집 할 수 있습니다. 속성을 설정하는 대화 상자는 CostFinalize 이후이므로 SetDirectory를 사용해야한다고 가정합니다. 그러나이를 정의하는 데 문제가 있습니다. 나는 단계를 진행하기 위해 관리했습니다

EDIT "네트워크 위치에 액세스 할 수 없습니다"라는 오류가 발생합니다. 필자는 직접 DIRECTORY_PROGRAM_GROUP 키가있는 디렉토리를 추가했습니다 (디렉토리를 공개하기 위해 모든 대문자가 중요합니다). 그런 다음 사용자 지정 작업을 사용하여 대화 상자를 실행 한 후 해당 디렉터리를 원하는 값으로 설정합니다 [ProgramMenuFolder] [PROGRAM_GROUP_NAME], 그리고 해당 폴더에 만들 바로 가기를 수정했습니다.

답변

0

바로 가기 폴더에 설치됩니다 ... 제거 할 때 이제 프로그램 그룹이 더 이상 제거하지만, 잘 작동하지하는 것, 그리고 당신이 그것을 설명으로 ProgramMenuFolder 아래의 폴더의 이름은 프로그램 그룹이 될 . 따라서 Directory table을 빌드해야합니다 (직접 작성 - DefaultDir 열은 지역화가 가능하며 이미 업데이트 할 수있는 문자열이 있거나 파일 및 폴더보기를 통해 가능함). , 사용자 정의 작업 (원가 계산 전에는 특성을 설정하고, 원가 계산 후에는 디렉토리를 설정)을 사용하여 바로 가기가 설치된 위치를 조정하십시오.

ID_STRING46의 이름을 바꾸는 문제는 문자열 이름을 변경 한 후에 참조를 업데이트하지 않았을 가능성이 있습니다. 이러한 위치를 추적하는 가장 간단한 방법은 (아마도 InstallShield의 MSI Diff를 사용하여) 빌드 된 설치 프로그램의 차이를 검사 한 다음 일반 뷰에서 찾을 수없는 경우 직접 편집기를 사용하여 관련 참조를 업데이트하는 것입니다.

+0

디렉토리 테이블을 직접 빌드하는 것이 효과가없는 것 같습니다. 디렉토리 테이블의 DefaultDir 열에있는 [PROGRAMGROUP_NAME] 속성을 사용하면 [PROGRAMGROUP_NAME] (말 그대로)라는 프로그램 그룹으로 끝납니다. 사용자 지정 작업을 지금 사용하려고하지만 정의하는 데 문제가 있습니다. 속성을 설정하는 대화 상자는 CostFinalize 이후이므로 SetDirectory를 사용해야한다고 가정합니다. 그러나이를 정의하는 데 문제가 있습니다.내가 – MHJF