itotalcmd:Режимы установки

Материал из IMPOMEZIA

Перейти к: навигация, поиск

Содержание

Вступление

В IMPOMEZIA Total Commander применяется многофункциональный инсталлятор собственной разработки, базирующийся на NSIS. В общей сложности поддерживается 6 различных режимов работы (4 для инсталлятора и 2 для деинсталлятора). В этой статье они все будут подробно описаны.

Установка

Ниже описаны 4 возможных режима установки.

Нормальный режим


Нормальный (обычный) режим установки, в привычном стиле мастера, вы выбираете компоненты, опции и устанавливается программу.

Режим обновления


Выбор режима установки.

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

Критерии проверки установки


Прежде чем разрешить режим обновления инсталлятор должен проверить возможность обновления и версии установленной сборки для принятия решения о необходимости обновления.

Теперь, как и что проверяется. Первым делом в папке установки пытаемся найти файл totalcmd.exe если находим проверяем его версию, допустимая версия 7.0.1.0[1] или выше.

Затем проверяем наличие в папке установки файла uninstall.ini и пытаемся получить из него расположение файла wincmd.ini (секция [itotalcmd] ключ MainIni), однако если инсталлятор запущен с ключом -U[2], мы игнорируем записи в этом файле и определяем расположение wincmd.ini из переменной окружения %COMMANDER_INI%.

Если wincmd.ini найден выполняем дополнительную проверку[3] суть которой заключается в том это если файл конфигурации находится в нестандартном месте в нём не должно быть UseIniInProgramDir=7.

Затем из файла uninstall.ini узнаём версию установленной сборки (секция [itotalcmd] ключ Version), и завершающим действием проверяем конфигурационный файл на возможность записи.

Если на любом из выше перечисленных этапов произошла ошибка, то обновление будет не возможно.

Что делать если нет записей в реестре?


Может возникнуть ситуация когда инсталлятор не может обновить сборку просто по тому что не может её найти (например при portable использовании). Есть как минимум три пути решения этой проблемы:

  • Автоматический
Для этого запускаем деинсталлятор (uninstall.exe) в режиме восстановления, после это все необходимые записи будут восстановлены.[3]
  • Метод форсированного обновления.
Для этого нужно из Total Commander-а которого хотим обновить, запустить инсталлятор с ключом -U, папка установки и файл конфигурации будут определены автоматически, в данном режиме может быть полезен ключ -noreg предотвращающий запись информации об установке в реестр.[2]
  • Ручной режим
В этом режиме мы вручную восстанавливаем сведения по котором инсталляторм сможет найти установленну сборку. Для этого необходимо указать в реестре правильный путь установки (если путь стандартный и в реестре ничего нет, то этого можно не делать) воспользовавшись следующим REG файлом, либо сделав тоже самое при помощи редактора реестра (путь нужно вписать свой):
Windows Registry Editor Version 5.00 
 
[HKEY_LOCAL_MACHINE\SOFTWARE\IMPOMEZIA\itotalcmd] 
"installpath"="C:\\Program Files\\IMPOMEZIA\\itotalcmd"
Также необходимо исправить путь к wincmd.ini в файле uninstall.ini например так:
[itotalcmd]
MainIni="C:\Program Files\IMPOMEZIA\itotalcmd\wincmd.ini"
Если путь к wincmd.ini в вас стандартный (в папке с программой), то можно поступить проще и просто удалить[3] ключ MainIni.

Режим имитации установки


Режим имитации установки вызывается запуском инсталлятора с ключом -C, при этом установка будет выглядеть как обычно, но фактически ничего не будет установлено, результатом работы данного режима станет файл unattended.bat содержащий автоматически созданную командную строку, на основе выбранных вами опций. Этот режим служит для лёгкого формирования командной строки для unattended установки.

SILENT (тихий) режим


Данный режим вызывается запуском инсталлятора с ключом -silent, при этом установка протекает без взаимодействия с пользователем, т.е. скрыто, это необходимо для unattended установки.

Деинсталляция

Деинсталляция служит для удаления или восстановления сборки, вызывается запуском uninstall.exe либо стандартно запуском ярлыка из меню "Все программы" или через аплет панели управления "Установка и удаления программ".

Восстановление


Режим восстановления.

Режим восстановления позволяет восстановить регистрацию сборки в реестре, восстановить ярлыки, и переустановить некоторые компоненты которые требуют интеграции в систему.

Удаление


Этот режим удаляет сборку с компьютера.

Ссылки

Сноски

  1. Эта версия не менялась с первых публичных Beta версий Total Commander вплоть до релиза 7.01 включительно.
  2. 2,0 2,1 Требуется версия 3.1.0.0 или выше, подробности в ISSUE 73
  3. 3,0 3,1 3,2 Требуется версия 3.1.0.0 или выше, подробности в ISSUE 72
Бесплатный хостинг от EOMY.NET