Мне нужно изменить поведение установки MSI для установки «IBM i Access for Windows».Настройка была создана с помощью InstallShield.Во время установки программа запускает две другие установки MSI через «цепочку».Параметры, переданные MSIEXEC.EXE для выполнения этих двух установок, загружаются с помощью специального действия из библиотеки DLL, которая включена в установку.Параметры заканчиваются в свойстве MSI.
Я хочу изменить значение в этом свойстве, чтобы манипулировать командной строкой до запуска цепной установки.Это возможно?Если так, то как?У меня нет проблем с созданием внешней DLL, которая считывает и изменяет свойство, но я не знаю, как интегрировать это с существующей установкой - какие таблицы мне нужно изменить и как, где я должен поместить DLL,...
РЕДАКТИРОВАТЬ 1 : Чтобы уточнить это: я хочу изменить параметры, передаваемые в цепочку установок MSI.Они не зависят от параметров, которые я передаю основной установке, и загружаются из DLL, являющейся частью установки.
РЕДАКТИРОВАНИЕ 2 : я загрузил простую MSI + соответствующий файл журнала .Я начинаю основную установку с "/ qn", чтобы подавить все сообщения.Это работает без проблем, связанные установки выполняются без видимых подсказок.Проблема возникает при удалении программного обеспечения (снова с «/ qn»).Удаленное настраиваемое действие загружается из DLL (строка 6417):
MSI (s) (10:28) [09:00:45:643]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIA4BD.tmp, Entrypoint: ISChainPackages
В командной строке, загружаемой из DLL, указывается вызов MSIEXEC.EXE с параметром "/ qb" вместо "/ qn" (строка 6958):
MSI (s) (10!60) [09:00:46:033]: PROPERTY CHANGE: Adding IS_CHAINER_POST_COMMANDLINE property. Its value is '/l"c:\temp\IBM_iAccess_7.1_Uninstall.log" /qb /x{CCA40632-843E-48C6-B14F-E1070015D87C} ...
И поскольку установщик MSI заблокировал файл, всплывающее окно сообщений вызвано удалением цепочки MSI (строка 44046):
MSI (s) (10:C0) [09:01:05:553]: RESTART MANAGER: Did detect that the custom action server with process ID 2352 holds file[s] in use, so a reboot will be necessary.
MSI (s) (10:C0) [09:01:05:553]: Note: 1: 1610
MSI (s) (10:C0) [09:01:11:224]: RESTART MANAGER: The user chose to go on with the installation, although a reboot will be required.
The setup must update files or services that cannot be updated while the system is running. If you choose to continue, a reboot will be required to complete the setup.
Установочные файлы для версии 7.1 этого программного обеспечения больше не доступны на веб-сайте IBM .Только текущая версия, и я не изучал, существует ли проблема с последней версией или нет, так как бизнес-отдел попросил меня упаковать v7.1.