Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 6]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 6]

Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1274
Благодарности: 1030


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: El Sanchez
Дата: 16-02-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

Отправлено: 19:06, 28-03-2013

 

Новый участник


Сообщения: 28
Благодарности: 0

Профиль | Отправить PM | Цитировать


ребят, есть ещё одна задача которую мне не осилить, помогите плиз!
надо перед установкой проверять наличие REG_SZ ключа в реестре
путь к ключу HKEY_LOCAL_MACHINE\SOFTWARE\TimeCalculator http://clip2net.com/s/6CtciX
если ключ есть то:
> не показывать http://clip2net.com/s/6Ct3EB данную страницу, а путь для установки брать из ключа path и продолжать установку
если ключа нет то:
> продолжать установку в штатном режиме (со страницей выбора пути)

Отправлено: 01:27, 18-01-2014 | #1871



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


Цитата novahudonoser:
надо перед установкой проверять наличие REG_SZ ключа в реестре »
Пример
Код: Выделить весь код
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={code:GetInstallDir}
OutputDir=.


[Code]
function GetInstallDir(const Default: String): String;
begin
    RegQueryStringValue(HKLM, 'SOFTWARE\TimeCalculator', 'path', Result);
    if Result <> '' then RemoveBackslash(Result) else Result := ExpandConstant('{pf}\My Program');
end;


function ShouldSkipPage(PageID: Integer): Boolean;
begin
    case PageID of
        wpSelectDir: Result := RegValueExists(HKLM, 'SOFTWARE\TimeCalculator', 'path');
    end;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 05:07, 18-01-2014 | #1872


Новый участник


Сообщения: 28
Благодарности: 0

Профиль | Отправить PM | Цитировать


при отсутствии ключа выдает http://clip2net.com/s/6Cxvf0

Отправлено: 10:05, 18-01-2014 | #1873


Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


Цитата novahudonoser:
при отсутствии ключа выдает »
Потому что запускаете отладку в режиме деинсталяции. Скрипт проверен, и он тут ни причем.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:08, 18-01-2014 | #1874


Новый участник


Сообщения: 28
Благодарности: 0

Профиль | Отправить PM | Цитировать


ой, тупанул )
спасибо большое мил человек, всё работает!


ещё вопросы, если позволите:
1. как удалить тот ключ при деинсталяции

2. как вывести строковый Label на последней странице в котором была бы информация о используемом пути
а то в случае пропуска страницы с выбором пути - юзеру остаётся догадываться куда прога установилась

Последний раз редактировалось novahudonoser, 18-01-2014 в 10:43.


Отправлено: 10:22, 18-01-2014 | #1875


Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


Цитата novahudonoser:
как удалить тот ключ при деинсталяции »
Код: Выделить весь код
[Registry]
Root: HKLM; Subkey: SOFTWARE\TimeCalculator; Flags: dontcreatekey uninsdeletekey;
Цитата novahudonoser:
как вывести строковый Label на последней странице в котором была бы информация о используемом пути
а то в случае пропуска страницы с выбором пути - юзеру остаётся догадываться куда прога установилась »
Тут необязательно что-то изобретать - путь установки будет отображен в ReadyMemo на странице готовности.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:50, 18-01-2014 | #1876


Новый участник


Сообщения: 28
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата saurn:
Тут необязательно что-то изобретать - путь установки будет отображен в ReadyMemo на странице готовности. »
я эту страницу не показываю изначально DisableReadyPage=yes
но впринципе её можно показать когда путь берётся из реестра, вопрос только как )

Отправлено: 11:05, 18-01-2014 | #1877


Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


Цитата novahudonoser:
вопрос только как ) »
Например так:
читать дальше »
Код: Выделить весь код
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={code:GetInstallDir}
OutputDir=.


[Code]
function GetInstallDir(const Default: String): String;
begin
    RegQueryStringValue(HKLM, 'SOFTWARE\TimeCalculator', 'path', Result);
    if Result <> '' then RemoveBackslash(Result) else Result := ExpandConstant('{pf}\My Program');
end;


function ShouldSkipPage(PageID: Integer): Boolean;
var
    ValueExists: Boolean;
begin
    ValueExists := RegValueExists(HKLM, 'SOFTWARE\TimeCalculator', 'path');
    
    case PageID of
        wpSelectDir: Result := ValueExists;
        wpReady: Result := not ValueExists;
    end;
end;

Отправлено: 11:26, 18-01-2014 | #1878


Новый участник


Сообщения: 28
Благодарности: 0

Профиль | Отправить PM | Цитировать


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

Отправлено: 11:41, 18-01-2014 | #1879


Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


novahudonoser, так вы DisableReadyPage=yes из секции Setup уберите

Отправлено: 11:47, 18-01-2014 | #1880



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 6]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 5] El Sanchez Автоматическая установка приложений 1999 28-03-2013 19:09
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59




 
Переход