Wix: одиночний MSI замість msi + cab


163

Мій проект Wix створює install.msi та cab1.cab. Як я можу змусити це зв'язати все в msi? Я, швидше за все, використовую 7-zip SFX, щоб обійти це, але я бачив інші програми лише з одним msi.

Відповіді:


248

Ви не опублікували жодного джерела, але я припускаю, що ваш файл wxs має елемент Media. Просто встановіть атрибут EmbedCab на "так".


8
У мене був порожній елемент MediaTemplate, але я замінив його таким: <Media Id = "1" Cabinet = "Cab1.cab" EmbedCab = "так" /> Дякую!
wtjones

124
Зауважте, ви можете додати EmbedCab="yes"до MediaTemplateелемента, щоб досягти цього.
Джефф Йейтс

10
MediaTemplate був недоступний до WiX 3.6. wtjones не згадав, яку версію WiX він використовував, тому я згадав спосіб, який буде працювати для більшої кількості людей.
Крістофер Художник

57

Встановити EmbedCab="yes".

З WIX 3.8:

<MediaTemplate EmbedCab="yes" />

Перед WIX 3.8:

<Media Id="1" Cabinet="cab1.cab" EmbedCab="yes" />

24

Використовуйте його так:

<Media Id="1" Cabinet="CabFileName.cab" EmbedCab="yes" />

Також у цій статті описані інші способи цього зробити.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.