На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ Inno Setup
Пожалуйста, выделяйте текст инсталлятора написанного на Inno Setup тегом [сode=ins] ... [/сode]. Для этого используйте кнопку [code=ins] в форме ответа или выпадающего списка, если нужно вставить код из другой программы.


Обязательно указывать:

  • Программу, используемую для создания инсталлятора.



Если в ходе решения проблемы возникли дополнительные вопросы, по возможности задаем их в той же теме.


Выразить свое отношение к модераторам раздела можно здесь: Profi, Fester
Модераторы: Fester
  
> WIX Merge Module error 2753 , несостыковка версия файлов из Merge Module
    Проблема в следующем, один и тот же Merge Module используется в двух различных инсталлах... Если установить сначала инсталл с более новой версией Merge Module, а потом попытаться установить второй с более старой версией - получаем ошибку 2753. И инсталляция второго продукта прерывается. Старая версия на новую заменяется нормально. Как можно избежать подобной ошибки?
      странно, что инстраллер пытается срелать даунгрейд.

      у тебя есть логи?
        какая именно часть лога требуется? Если только ошибка, то вот она...

        Action 13:20:55: Run_CBUSetup.
        Action start 13:20:55: Run_CBUSetup.
        DEBUG: Error 2753: The File 'cbusetup.exe.B17FC8AD_7718_4B87_BD0A_2E7837993547' is not marked for installation.
        The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2753. The arguments are: cbusetup.exe.B17FC8AD_7718_4B87_BD0A_2E7837993547, ,
        MSI (s) (E8:28) [13:21:04:479]: Product: Cinegy License Manager -- The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2753. The arguments are: cbusetup.exe.B17FC8AD_7718_4B87_BD0A_2E7837993547, ,
          Run_CBUSetup - это кастом экшен?
          Ты пытаешься получить путь к этому cbusetup.exe чтобы потом запустить его?
            Нет, кастом экшенов там нет вообще.
            Есть только это...

            <Merge Id='CBUSetup' Language='0' DiskId='1' SourceFile='$(var.SMARXFileSrc)\Driver\CBUSetup.msm' />
              запакуй и приаттач весь лог.
                Прикреплённый файлПрикреплённый файлlog.7z (3,36 Кбайт, скачиваний: 168)
                вот
                  Ну так похоже, что Run_CBUSetup - какое-то действие. Смотри внимательно что это такое и что оно делает.
                    Вот что нашел в ридми к этому CBUSetup

                    This setup performs automatic installation of CRYPTO-BOX and CRYPTO-BOX 2 drivers
                    and related components depending of the operating system. The installer
                    is a self-extracting tool which contains all files needed to support CRYPTO-BOX
                    and CRYPTO-BOX 2 USB and is thus self-sufficient.
                      короче говоря, похоже на то, что инсталлер вытается получить путь к файлу, который он не инсталлирует (из-за даунгрейда). на этом он обламывается :)
                      если можешь, то поставь в InstallExecuteSecuence кондишен на Run_CBUSetup и исполный это действие только тогда, когда компонента будет устанавливаться.

                      Т.е. кондишен должен быть примерно такой: $<иня компоненты в которой находится файл с ID cbusetup.exe.B17FC8AD_7718_4B87_BD0A_2E7837993547> = 3
                      Сообщение отредактировано: Fester -
                        Сорри, не понял, что за кондишн? В Children'ах InstallExecuteSequence такого не нашел...

                        Добавлено
                        упс, поздно увидел апдейт сообщения.
                          Цитата Fester @
                          Т.е. кондишен должен быть примерно такой: $<иня компоненты в которой находится файл с ID cbusetup.exe.B17FC8AD_7718_4B87_BD0A_2E7837993547> = 3

                          Что-то не получается. Я не совсем понял принцип, если честно =(
                          В примере использования кондишена нашел только его использование в Feature, а не в InstallExecuteSequence.

                          "иня компоненты в которой находится файл с ID cbusetup.exe.B17FC8AD_7718_4B87_BD0A_2E7837993547" - у меня такой компоненты нет, только мердж-модуль <Merge Id='CBUSetup' Language='0' DiskId='1' SourceFile='$(var.SMARXFileSrc)\Driver\CBUSetup.msm' />
                          Вообще этот модуль упоминается ещё только уже в единственной Feature:
                          <MergeRef Id='CBUSetup' />

                          Больше у меня в wxs нет ни каких упоминаний CBUSetup и Run_CBUSetup.
                            Цитата 0.0 @
                            В примере использования кондишена нашел только его использование в Feature, а не в InstallExecuteSequence.

                            Кондишены можно использовать везде, где тип Condition :)

                            Цитата 0.0 @
                            у меня такой компоненты нет, только мердж-модуль

                            вот именно мердж-модуль тебе и надо править ;)

                            Цитата 0.0 @
                            <MergeRef Id='CBUSetup' />

                            Ну это ты его просто включаешь :)

                            Цитата 0.0 @
                            Больше у меня в wxs нет ни каких упоминаний CBUSetup и Run_CBUSetup.

                            судя по всему, у тебя мердж-модуль бракованный.
                            Обратись к разработчику этого мердж-модуля.
                            1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                            0 пользователей:


                            Рейтинг@Mail.ru
                            [ Script execution time: 0,0292 ]   [ 16 queries used ]   [ Generated: 20.05.24, 14:16 GMT ]