Express Edition : я не уверен, что Express Edition Installshield поддерживает настраиваемые действия или Installscript (язык сценариев настраиваемых действий)? Я не думаю, что это так . На самом деле, похоже, что нет, но у меня нет продукта перед собой.
Опции : я думаю, вам нужно либо 1)
обновить до более поздней версии, 2)
переключиться на другой продукт или 3)
попробуйте самостоятельно «внедрить» (управляемую) DLL настраиваемого действия в скомпилированный MSI из Installshield Express.
WiX Votive : Это будет «наилучшее предположение», даже не пробовав его для производства. Если вы создадите проект настраиваемого действия управляемого кода с использованием Votive Feature WiX (расширение WiX Toolset Visual Studio), то проект будет скомпилирован с использованием подхода DTF для объединения управляемого кода в dll, который выглядит как родная DLL. Полученную в результате встроенную библиотеку DLL можно будет вставить или вставить в любой пакет MSI (требуется некоторая сантехника, много мелких хлопот, но это определенно не ракетостроение - вам это удастся, если вы захотите).
MakeSfxCA.exe : обратите внимание, что из проекта управляемого кода WiX созданы две библиотеки DLL. DLL управляемого кода, а затем дополнительный dll с CA добавляется в конец его идентичного имени. Последняя версия CA - это встроенная, встроенная DLL-библиотека, которую вам нужно использовать.
Вставить CA DLL : я провел быстрый тест и смог внедрить DLL, встроенную в WiX / DTF , в пакет, изготовленный другим продуктом , Вы просто вставляете DLL как обычное пользовательское действие DLL. Это включает в себя добавление DLL в двоичную таблицу (полезную нагрузку), а также в таблицу пользовательских действий (конфигурацию настраиваемого действия) и таблицы InstallExecuteSequence или InstallUISequence (или в обе - в зависимости от последовательности). Эти последние таблицы определяют последовательность настраиваемого действия (когда оно выполняется).
Orca, Direct Editor или CA View : если редакция Express позволяет определять настраиваемые действия, используйте этот подход и добавьте DLL таким образом. Если он поддерживает представление Direct Editor (представление таблиц), вы можете сделать это оттуда. Если нет, выведите Orca и сделайте это сами. Не ракетостроение, а множество мелких деталей, которые можно испортить, прежде чем привыкнуть к нему. Как вы понимаете, для меня здесь много неизвестного - просто совет, который поможет вам реально помочь себе. Надеюсь, я не сбиваю тебя с пути. Хотя это может быть сделано за несколько минут с опытом, оно может потратить впустую целый день, если вам придется делать «стиль бампер-бампер».
CA управляемого кода : Есть некоторые пугающие проблемы, связанные с настраиваемыми действиями управляемого кода, хотя мы достигаем стадии, когда на большинстве целевых компьютеров установлена версия .NET. Я бы рекомендовал вместо этого родную C ++ DLL - если это вариант. Проблемы с управляемым кодом сосредоточены вокруг зависимостей времени выполнения (заблокированных, отсутствующих, неработающих во время выполнения), интерференции версий во время выполнения (какая версия .NET загружена), проблем с зависимостями GAC (вы не можете полагаться на сборки, устанавливаемые в GAC из-за смешанного Fusion / Модели фиксации MSI) и т. Д. WiX работал над внедрением передового опыта, поэтому я не уверен, насколько серьезными эти проблемы, если честно.