2014-10-01 2 views
1

Я пытаюсь связать демонстрационный проект с установщиком WiX MSI для приложения. Моя цель - создать папку «Проекты», содержащую папку «Демо-проект» в каталоге «Документы пользователя».WiX MSI: Bundle Demo Project с установщиком

С моей компетенции установки является «perMachine» добавление файлов в результатах каталога пользователя в следующей ошибки для каждого файла:

It must use a registry key under HKCU as its KeyPath, not a file 

Я мог бы исправить эту ошибку, добавив элемент RegistryValue к каждому компоненту, но, то демо-проект имеет не менее 1000 файлов.

Я думал о создании другого установщика для демонстрационного проекта, который будет иметь область установки «perUser», а затем связать ее с загрузчиком WiX. Единственным недостатком является то, что он похож на хак.

Что такое рекомендуемый метод при установке дополнительного материала для приложения? Должен ли я создать еще один установщик или есть расширение WiX, которое позволит мне копировать файлы в каталог документов пользователя?

ответ

2

Поскольку это демонстрационный проект, а не критический для вашего приложения, один из подходов заключается в том, чтобы застегнуть его на молнию и иметь этот единственный zip-файл в качестве компонента. Потенциальная проблема с демонстрационными проектами в вашем случае с компонентами для каждого файла заключается в том, что пользователи будут запускать демонстрацию в некотором роде, и в конечном итоге установщику Windows будет предложено его восстановить. Это особенно верно, если проект - это то, что клиенты открывают с помощью инструмента dev и начинают меняться. Вы не хотите, чтобы демонстрационное взаимодействие с ремонтом повлияло на ваше запущенное приложение.

Невозможно скопировать файлы в папки пользователя по WiX или MSI, поскольку на самом деле это ключевой путь реестра. Это также имеет преимущество работы с учетными записями пользователей, которые еще не созданы. Когда другой пользователь входит в систему и использует приложение, Windows замечает, что для этого пользователя отсутствует ключевой путь, и запрашивает установку компонента основного ключа (файла) из исходного источника установки.

+0

Мне нравится идея zip-файла. Это уменьшит количество запросов поддержки о том, что демо не работает ... потому что пользователь изменил его. (Раньше я установил демонстрацию в месте, где вы находитесь.) Снова вернувшись к исходному примеру, перезапускается путь к успеху. (Разумеется, контроль версий тоже будет делать это.) –

+0

Спасибо за отзыв PhilDW. Сегодня я заметил, что WiX позволяет выполнять команды после установки пакета. Возможно, я мог бы связать zip с приложением, а затем извлечь его в каталог документов пользователя. Это может устранить необходимость иметь дело с реестром. – MrMcKizzle

Смежные вопросы