2010-07-23 4 views
2

을 추적하지만 난 대답을 찾을 수 있었어요 : MyCompany 만든 A와 B :윅스 - 이것은 매우 간단한 문제처럼 보인다 설치된 응용 프로그램

이의 내가 두 제품이 있다고 가정 해 봅시다. 내가 "제품 B"를 제거하면

MyCompanyFolder-> Product_A_Folder-> a.exe를하고 MyCompanyFolder-> Product_B_Folder-> B.exe

: 두 제품 모두 A와 B는 이런 식으로 시작 메뉴에 바로 가기를해야합니다 마지막 제품이 아니면 "MyCompanyFolder"를 삭제하지 않기를 바란다. 나는 단지 "제품 A"가 존재하는지 아닌지 (구성 요소 또는 레지스트리 검색을 통해) 확인하지만, 현재 얼마나 많은 미래의 응용 프로그램이이 폴더에 추가 될지 아는 것은 불가능합니다.

내가 가진 유일한 해결책은 설치된 앱의 수를 나타내는 정수가 포함 된 레지스트리 키를 만드는 것이 었습니다.하지만 그 방법은 조금 비 숙련 된 것 같습니다. (레지스트리 키 값을 늘리는 방법을 모르는 것도 아닙니다. 윅스).

의견이 있으십니까? 감사합니다. .

답변

3

설치시 비정상적으로 수행해야합니다. 자동으로 작동해야하기 때문입니다. 시작 메뉴 디렉토리에 대한 구성 요소 나 createfolder 요소가있을 필요는 없습니다. 아래의 참조를 만들고 설치 전반에 걸쳐 ShortCut 요소의 ApplicationProgramsFolder ID를 사용하면 MSI가 자동으로 마지막 항목을 처리하여 off 폴더를 제거합니다.

<Directory Id="TARGETDIR" Name="SourceDir"> 
    <Directory Id="ProgramMenuFolder"> 
    <Directory Id="CompanyProgramsFolder" Name="ISWIX, LLC"> 
    <Directory Id="ApplicationProgramsFolder" Name="IsWiX" /> 
    </Directory> 
</Directory> 
</Directory> 
+0

예 저는 이것이 기본 동작임을 깨달았습니다. 나는 이것을 지정한 곳을 찾지 못했습니다. 감사! – Chris

관련 문제