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

Компьютерный форум 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

 

Пользователь


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

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


Nordek , спасибо огромное)

Отправлено: 16:35, 23-10-2013 | #1341



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

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


Аватара для nik1967

Старожил


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

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


Цитата Mat_y:
Веселый Вы человек... я тут на форуме людей мучил вопросами как сделать, чтобы компоненты (уже установленные) запоминались и реестр не страдал, а Вы мне предлагаете просто поставить "NO"... »
А один фиг, если всплывает такое окно, значит инсталл читает данные из реестра, как ты не упирайся. Одну запись в реестре он по любому (если конечно не прописано Uninstallable=no) создаёт. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\имя проги или GUID_is1. Ну а так то да, я весёлый чел.

-------
Если сообщение оказалось полезным для Вас, то помимо спасибо, можно нажать на "Полезное сообщение".


Отправлено: 21:51, 23-10-2013 | #1342


Пользователь


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

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


Цитата nik1967:
А один фиг »
Вот решение
флаг disablenouninstallwarning

Я апну мой следующий вопрос, а то он уполз без ответа.

Отправлено: 22:06, 23-10-2013 | #1343


Аватара для nik1967

Старожил


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

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


Цитата Mat_y:
Вот решение
флаг disablenouninstallwarning »
Это решение для одного компонента, а если компонентов сотня? К каждому приписывать этот флаг? Хотя, что я доказываю.

-------
Если сообщение оказалось полезным для Вас, то помимо спасибо, можно нажать на "Полезное сообщение".


Отправлено: 07:30, 24-10-2013 | #1344


Пользователь


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

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


Цитата nik1967:
Это решение для одного компонента, а если компонентов сотня? К каждому приписывать этот флаг? Хотя, что я доказываю. »
1/ Вы частично правы... в Ваших словах есть логика... но есть ISTool, где можно выделить все компоненты и поставить галочку напротив нужного флажка... у меня более 70 компонентов.... потратил примерно минуту с учетом запуска ISTool и нажатия кнопки сохранить в конце...

2/ Ребят... я перефразирую свой насущный вопрос...

Есть ли правило, которое бы звучало так:
Код: Выделить весь код
если 
установка уже запускалась (или присутствует запись этого установщика в реестре)
то
не создавать TCheckBox
иначе
begin
  RedesignWizardForm;
MyTask:=TCheckBox.Create(WizardForm);
with MyTask do
begin
Parent:=WizardForm.SelectDirPage;
Caption:='Я хочу создать резервную копию';
Left:=ScaleX(0);
Top:=ScaleY(180);
Width:=ScaleX(400);
Height:=ScaleY(15);
TabOrder:=0;
Checked:=False;
3/ Ребят, из-за чего может возникать такая ошибка?
Код: Выделить весь код
Runtime Error:

Недопустимая строка с указанием класса, ProgID: "Scripting.FileSystemObject"

Последний раз редактировалось Mat_y, 24-10-2013 в 09:15.


Отправлено: 08:52, 24-10-2013 | #1345


SHVtYW4=


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

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


Mat_y, Можешь посмотреть в эту сторону:
читать дальше »
Код: Выделить весь код
[Components]
Name: A; Description: Компонент; Types: full; Check: skipcmp

[Code]
function skipcmp:boolean;
begin
  Result:=True;
begin
 If RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Inno Setup 5_is1') then
  Result:=False
end;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:13, 24-10-2013 | #1346


Пользователь


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

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


Цитата Nordek:
Можешь посмотреть в эту сторону »
Что-то я никак не соображу, как бы это применить к моему случаю

Отправлено: 15:05, 24-10-2013 | #1347


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

Ветеран


Contributor


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

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


Цитата Mat_y:
Есть ли правило, которое бы звучало так: »
Mat_y, создать чекбокс, в свойстве Visible прописать:
Код: Выделить весь код
Visible := not RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyProgram_is1');
Цитата Mat_y:
из-за чего может возникать такая ошибка? »
Mat_y, означает, что часть компонента WSH тю-тю из-за насильнических действий над системой. Объект FileSystemObject живет в scrrun.dll, ее и нужно перерегистрировать:
Код: Выделить весь код
regsvr32 /u scrrun.dll
regsvr32 /s scrrun.dll
А размер файла можно получить не только с помощью объекта FileSystemObject, а и с помощью справки.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:35, 24-10-2013 | #1348


Пользователь


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

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


Цитата El Sanchez:
Mat_y, создать чекбокс, в свойстве Visible прописать: »
что-то не работает.... я правильно делаю:?
читать дальше »
Код: Выделить весь код
///////////////////Добавляем кнопки - Резервная копия////////////////////////////
begin
  RedesignWizardForm;
MyTask:=TCheckBox.Create(WizardForm);
with MyTask do
begin
Parent:=WizardForm.SelectDirPage;
Caption:='Я хочу создать резервную копию';
Left:=ScaleX(0);
Top:=ScaleY(180);
Width:=ScaleX(400);
Height:=ScaleY(15);
TabOrder:=0;
Checked:=False;
Visible:= not RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#AppID}_is1');
///////////////////Добавляем кнопки - Резервная копия КОНЕЦ////////////////////////////


Если ставлю просто Visible:= true, то само собой все скрывается навсегда

Цитата El Sanchez:
Объект FileSystemObject живет в scrrun.dll, ее и нужно перерегистрировать »
Этот куда вписывать? Просто ошибка на чужом компьютере всплыла.

Цитата El Sanchez:
А размер файла можно получить не только с помощью объекта FileSystemObject, а и с помощью справки. »
Не, у меня это для проверки версии файла...
читать дальше »
Код: Выделить весь код
function FileVersion(const FilePath: String): String;
var
  oFS: Variant;
begin
  oFS:= CreateOleObject('Scripting.FileSystemObject');
    try
      Result:= oFS.GetFileVersion(FilePath);
    except
  end;
end;

Последний раз редактировалось Mat_y, 24-10-2013 в 19:36.


Отправлено: 19:09, 24-10-2013 | #1349


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

Ветеран


Contributor


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

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


Цитата Mat_y:
что-то не работает.... я правильно делаю:? »
Mat_y, {#AppID}_is1 с раскрытием константы этот раздел в реестре точно присутствует?

Цитата Mat_y:
Этот куда вписывать? Просто ошибка на чужом компьютере всплыла. »
Mat_y, cmd.exe

Цитата Mat_y:
Не, у меня это для проверки версии файла... »
Mat_y, тьфу, ты, ступил . Тогда GetVersionNumbers, GetVersionNumbersString, Flags - comparetimestamp.

Отправлено: 20:21, 24-10-2013 | #1350



Компьютерный форум 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




 
Переход