У нас есть пакет установщика, созданный с помощью InstallShield 2009, ориентированный на Windows Installer 3.1.Пакет установщика, ориентированный на установщик Windows 3.1, не работает, когда установлен установщик Windows 4.5
В последнее время мы начали замечать, что когда-то при установке на некоторых компьютерах с ОС Windows 2003 R2 на базе x86 установка завершается с ошибкой, а в журнале установщика сообщается код ошибки 1603 (который, кстати, не очень помогает, как it means ERROR_INSTALL_FAILURE, что является очень общим «Во время установки произошла фатальная ошибка.»).
Поскольку установка по-прежнему работает на некоторых других хостах на той же платформе, после дальнейших исследований мы выяснили, что это происходило на хостах, где Sql Server 2008 R2 уже был установлен, что привело нас к выяснению проблемы на самом деле с установщиком Windows 4.5.
Когда установщик Windows 4.5 был установлен пакетом установщика, наш пакет установщика терпит неудачу с 1603. До сих пор мы обнаружили, что работаем: если мы вручную удалим установщик Windows 4.5 (работает что-то вроде «C: \ WINDOWS \ $ NtUninstallKB942288-v4 $ \ Spuninst \ spuninst.exe «), мы можем запустить наш установочный пакет успешно, но это имеет различные недостатки:
- пользователя, деинсталлировать Windows Installer 4.5 предлагается с диалоговым список все различные программные продукты, установленные с этим, и эффективно связь между этими продуктами и установщиком Windows 4.5 теряется после удаления, даже если мы его переустановим после успешной установки нашего приложения;
- как Microsoft выпустила различную версию установщика Windows 4.5, расположение утилиты для удаления, которая не является строго той, которая приведена выше;
- Неловко просить клиентов выполнять такую работу.
Я предполагаю, что обновление пакета установщика для целевой установки Windows Installer 5 может решить проблему, но если это возможно, я бы хотел ее избежать и продолжаю использовать InstallShield 2009 для создания этого конкретного пакета.
Я просмотрел базы знаний Microsoft и Flexera Knowledge Base (и продолжаю исследование), без каких-либо успехов.
Кто-нибудь знает, опубликовали ли Microsoft или Flexera или любую другую третью сторону исправление или дополнительную информацию об этой проблеме?
Некоторая информация о неудаче кода 1603 ошибки
Мы получили подробные журналы для этой проблемы, по крайней мере, от 3-х разных серверов, и мы исследовали, что в глубину, чтобы не пользоваться до сих пор. Большинство действий возвращают 1, некоторые 0 (в частности, IsolateComponents, MigrateFeatureStates, IsolateComponents, SetODBCFolders, MigrateFeatureStates, UnpublishComponents, UnregisterComPlus, UnregisterTypeLibraries, UnregisterMIMEInfo, RemoveShortcuts, RemoveFiles, CreateShortcuts, RegisterMIMEInfo, InstallODBC, RegisterTypeLibraries, RegisterComPlus и PublishComponents, но еще ничего не пришло), пакет установщика, по-видимому, практически можно установить (выполнить всю последовательность до «INSTALL. Возвращаемое значение 1.», оно даже печатает «Продукт: [Наш продукт] - завершена операция установки успешно. "), только после этого он начинает откатывать все, и, поскольку при откате возникают различные ошибки, я думаю, что некоторые из них вызовут 1603 (вероятно, около 1607, возвращенных MsiProvideAssembly на ISChainPackagesCleanup), но дело в том, что он должен" t rollback, а также с установщиком Windows 3.1 (или 5.x, если на то пошло), он откатывается только тогда, когда установлен Windows Installer 4.5, установленный в среде Windows x86.
Я также открыл нить на форуме Flexera для InstallShield 2009: http://community.flexerasoftware.com/showthread.php?p=479012 – aledeniz
Я также открыл тему на форуме InstallSite: http: // forum. installsite.net/index.php?showtopic=21075 – aledeniz
Чтобы быть более точным, мы обнаружили, что наш пакет установщика работает на Microsoft Windows Server 2003 R2 x86 с установщиком Windows 3.1.4000.3959 (он, вероятно, работает также с 3.1.4000.2435 и 3.1.4000.1830 , но я не тестировал их недавно), но он не работает там, если установлен Windows Installer 4.5.6001.22159 (т. е. из установщика Sql Server 2008 R2 или других пакетов, ориентированных на 4.5). – aledeniz