2014-09-12 5 views
0

저는 부트 스트 래퍼 프로젝트를 가지고 있으며 부트 스트 래퍼의 UI에서 다른 세 번째 파트 msi가 선택되어있는 경우에만 바로 가기를 추가해야합니다. 그래서 (관련이없는 데이터를 제거)이 같은 다른 작은 MSI와 끝까지 :WiX 바로 가기 전용 프로젝트

<Wix > 
<Product > 
    <Package /> 
    <MajorUpgrade /> 
    <MediaTemplate /> 

    <Directory Id="TARGETDIR" Name="SourceDir"> 
     <Directory Id="ProgramMenuFolder"> 
      <Directory Id="ApplicationProgramsFolder" Name="FolderName"> 
      </Directory> 
     </Directory> 
    </Directory> 

    <Component Id="ApplicationShortcut" Guid="PUT-GUID-HERE" Directory="ApplicationProgramsFolder"> 
     <Shortcut Id="ApplicationStartMenuShortcut" 
       Name="App" 
       Description="desc" 
       Target='"[ProgramFiles64Folder]Folder1\Folder2\app.exe"' 
       Arguments=' -n name' 
       /> 
     <RemoveFolder Id="RemoveProgramMenuDir" Directory="ApplicationProgramsFolder" On="uninstall" /> 
     <RegistryValue Root="HKCU" Key="Software\ACME\App" Name="installed" Type="integer" Value="1" KeyPath="yes"/> 
    </Component> 

    <Feature Id="ProductFeature" Title="Shortcuts" Level="1"> 
     <ComponentRef Id="ApplicationShortcut" /> 
    </Feature> 
</Product> 

그러나 나는 얻을 소스가 없기 때문에 문제의 어쨌든 컴파일되지 않는

ICE71: The Media table has no entries. 

답변

0

언어, 제품 코드 등. 완전한 예제를 게시했다면 도움이 될 것입니다. 이러한 문제를 해결하고 ICE71을 본 후, 당신은 기본적으로 같은

Media Id="1" Cabinet="product.cab" EmbedCab="yes"

다음 당신이 얻을 모든 LGHT1079 : The cabinet 'product.cab' does not contain any files을 경고하고 (각 괄호)로 mediatemplate을 삭제하고 올바른 미디어 항목을 추가해야합니다. 이 설치에 파일이 없으면이 경고가 무시 될 수 있습니다. 그렇지 않으면 파일을 캐비닛에 추가하거나 제거하십시오.

0

MSI가 설치 될 때 바로 가기를 만드는 변환으로 제 3 자 MSI를 보강합니다. 이렇게하면 부트 스트 래퍼에서 특별한 작업을 수행 할 필요가 없습니다.