У меня есть основное приложение TheApp
, которое поддерживает плагины. Приложение A устанавливается по умолчанию на $(ProgramFiles)\TheApp
, но владельцы золота хотят, чтобы это было настраиваемым пользователем, поэтому его местоположение может меняться в зависимости от ввода пользователя во время установки.Как расширение установщика MSI может найти каталог установки другого приложения?
Плагины устанавливаются путем копирования их в подкаталог Packages
в каталоге установки. В частности, не нужно устанавливать параметры реестра для загрузки пакета, и я стараюсь как можно больше не вмешиваться в реестр. Естественно, если пользователь изменил каталог установки при установке TheApp
, плагины также должны изменить место их установки для соответствия.
Как это лучше всего выполнить? Я не прикован к написанию установщиков MSI с помощью WiX, но первой попыткой, вероятно, будет создание раздела реестра, когда будет установлено TheApp
, сохранение его места установки, а затем поиск плагинов для раздела реестра. Это заставляет меня создавать значение реестра, чего я пытаюсь избежать, если это возможно. Однако мне кажется, что установщик должен иметь возможность использовать базу данных установщика Windows, чтобы найти каталог установки TheApp
. Это устраняет необходимость записи в реестре.
Есть ли «лучшая практика» для того, как это сделать, между установкой связи, в частности, с каталогом установки? Как будет выглядеть сообщение, учитывая, что оба установщика будут записаны в WiX?
Спасибо Том: это была информация, которую я искал. Я особенно ценю образец кода. Это дает мне хорошую отправную точку для моей реализации. –