Использование Inno Setup для исправления приложения Install Shield - PullRequest
0 голосов
/ 08 ноября 2010

Привет, у меня проблема, и мне нужно направление. У меня есть старое приложение, в котором есть установщик щита установки, для которого у меня нет сценариев установщика. Теперь я хочу сделать простой патч для этого приложения, используя Inno Setup.

Я читал документацию и, если бы знал appId, я мог бы просто добавить к той же установке новые файлы. Однако сейчас я не знаю, что у этого приложения есть. Я попробовал простой скрипт с тем же именем, но он тоже не сработал.

В любом случае найти appId для добавления к этой установке?

Может кто-то направить меня в правильном направлении, или это невозможно сделать?

1 Ответ

2 голосов
/ 17 ноября 2010

Короткий ответ - нет, вы не можете создать пакет обновления, который на 100% безупречен по сравнению с предыдущим пакетом Install Shield.Причина в том, знаете ли вы AppId или нет, InnoSetup добавляет _is в конец любого AppId, указанного для добавления в реестр.Довольно забавное действие, если вы спросите меня, но это путь мира, и давайте не будем забывать, что вы имеете дело с бесплатным приложением.У них были свои рассуждения, и они звучат, просто не имеет смысла для ваших нужд на данный момент.

Вы всегда можете сделать то, что я сделал, столкнувшись с той же ситуацией:

  1. Найдите AppId исходной установки.

    a.В Панели управления откройте «Установка и удаление программ».

    b.Найдите ваше заявление в списке и запишите имя.

    c.Откройте RegEdit.* ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: ЭТО МОЖЕТ ПОБОЧНО ПОСЛЕДОВАТЬ ВАШЕЙ СИСТЕМЕ, ПОЭТОМУ ОСТОРОЖНЫ

    d.Откройте следующий раздел реестра: HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall

    e.Нажмите на первый GUID, к которому вы пришли, и проверьте значение DisplayName на правой панели по отношению к имени, которое вы заметили ранее.Если это значение соответствует найденному вами AppId - это GUID, который вы выбрали.

    f.Выберите следующий GUID и возвращайтесь к шагу 1e, пока не получите совпадение.

  2. Используйте этот AppId в качестве AppId, который вы используете в InnoSetup, но добавьте слово «Update» в свой заголовок.

  3. Сборка и запуск вашей установки.

  4. Теперь у вас будет две записи в разделе «Установка и удаление программ» для вашего приложения, но одна будет четко помечена как обновление.Вы также проделали дополнительную работу, чтобы убедиться, что AppId максимально соответствует друг другу, что облегчает другим программам определение их взаимосвязи.

Удачив ваших начинаниях!

...