Использование heat.exe для добавления групповых файлов в новый проект WiX: HEAT5150 - PullRequest
4 голосов
/ 27 октября 2009

Если это повторный вопрос, пожалуйста, направьте меня к существующему решению. Я не смог найти подходящий запрос.

В настоящее время мы используем InstallShield. Я пытаюсь преобразовать проект с 407 файлами в установочный пакет WiX3. Я попытался использовать heat.exe для автоматизации, но я получаю следующее предупреждение почти для каждого файла:

c:> каталог тепла "c: \ projectDir \ projectA" -gg -ke -template: продукт-выход "c: \ install \ projectA \ heatOutput"

heat.exe: предупреждение HEAT5150: Не удалось собрать данные из файла, который, как предполагалось, был DLL-библиотекой SelfReg: c: \ projectDir \ projectA \ plugin1.dll. Если этот файл не поддерживает SelfReg, вы можете проигнорировать это предупреждение. В противном случае эта подробность ошибки может быть полезна для диагностики ошибки: невозможно загрузить файл: c: \ projectDir \ projectA \ plugin1.dll, ошибка: 126.

В: Это нормальное сообщение об этом предупреждении для каждого файла?

Если есть текущее учебное пособие «Как создать / преобразовать в ваш первый установочный проект WiX со многими файлами», пожалуйста, укажите мне на него. Ключевое требование - «со многими файлами».

PS. Я знаю, что WiX предназначен для создания инкрементных инсталляционных проектов, но было бы неплохо узнать, есть ли автоматический способ конвертации существующих инсталляционных проектов.

Ответы [ 2 ]

1 голос
/ 27 октября 2009

Если есть ток создать / преобразовать в свой первый WiX установить проект со многими файлами " учебник, пожалуйста, укажите мне на это. Ключевое требование: «со многими файлами»

Вы можете взять файл MSI, созданный с помощью installshield, а затем декомпилировать его с помощью инструмента dark.exe, поставляемого с wix. Как видно на на этой диаграмме , dark.exe создает файлы wxs из файла msi.

Вы можете использовать это так:

dark installer.msi decompiled.wxs

См. dark /? для получения дополнительной информации.

edit : я не использую Votive, но AFAIK должен иметь возможность обрабатывать файлы wxs, сгенерированные dark. Votive показала вам ошибку?

edit2 : файлы wixproj предназначены только для визуальной интеграции студии и msbuild. Основные инструменты не знают или не используют этот формат. Просто создайте пустой wixproj и добавьте в него файл wxs из visual studio.

edit3 : Вы не должны сравнивать размер файла wxs с размером файла msi. Как и файл проекта installshield, wxs не содержит файлов для установки. Это только ссылки на них. Ваш файл проекта installshield также не имеет большого размера 70 МБ. Если вы хотите извлечь двоичные файлы из MSI, вам следует использовать dark.exe с ключом -x <path>.

0 голосов
/ 28 октября 2009

Вы пытаетесь извлечь данные из x64 DLL? Это на самом деле не работает ...

...