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

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

 

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


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

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


Ребят... а реально ли в установщике сделать галку .."Установить обои на рабочий стол" с соответствующим функционалом?

Отправлено: 09:26, 09-12-2013 | #1661



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

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


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


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

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


El Sanchez, спасибо.)
А на счет смены кодировки при сохранении текста в файл никто не подскажет?

Отправлено: 12:13, 09-12-2013 | #1662


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


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

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


Всем привет, вопрос такой.
В стандартном установщике, когда идет странице выбора компонентов, очень маленькое окно, подскажите как его сделать больше? Чтобы е нужно было постоянно прокручивать бегуной.

Отправлено: 14:24, 09-12-2013 | #1663


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


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

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


Цитата Farser21:
В стандартном установщике, когда идет странице выбора компонентов, очень маленькое окно, подскажите как его сделать больше? Чтобы е нужно было постоянно прокручивать бегуной »
Можете настроить это окно как душе угодно.

Код: Выделить весь код
ComponentsList := TLabel.Create(WizardForm);
with ComponentsList do begin
    WizardForm.ComponentsList.Left:= ScaleX(30)///положение панели
    WizardForm.ComponentsList.Top:= ScaleY(100);
    WizardForm.ComponentsList.Width:= ScaleX(400)///размер панели
    WizardForm.ComponentsList.Height:= ScaleY(220)
    WizardForm.ComponentsList.Color:= $272727;///цвет фона в панели страници компонентов
    WizardForm.ComponentsList.Font.Color:= ClWhite;///цвет текста в панели страници компонентов
    WizardForm.ComponentsList.Font.Style:= [fsBold];
    WizardForm.ComponentsList.Font.Size:= 8;
    WizardForm.ComponentsList.Font.Name:= 'Arial'
    WizardForm.ComponentsList.Parent:= WizardForm.SelectComponentsPage;
    WizardForm.SelectComponentsPage;
  end;

Отправлено: 16:13, 09-12-2013 | #1664


SHVtYW4=


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

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


Farser21
Farser21, Ну что ты копипастишь одно и тоже? Если не ответили, то это не значит что пропустили или не заметили твоё сообщение. Просто гуру-кодеры пока в спячке.

Farser21,
Открой "Inno Setup Compiler".
Перейди во вкладку "WizardForm Desinger (Дизайнер диалогов)":

и меняй как тебе вздумается.
Только начинай с чистого скрипта, чтоб не запоганить ранее созданный.
С левого бока, выбираешь желаемый диалог который хочешь отредактировать.
Кликаешь на объект. Затем можешь расширить этот объект ухватив за край и/или передвинуть объект.
Если нужно передвинуть например сразу три кнопки. То зажимаешь SHIFT, выбираешь эти три кнопки затем отпускаешь SHIFT и перемещаешь.
Так же вверху есть панель, с помощью которой можешь добавить кнопку, прогрессбар и пр.
Например некоторые объекты не меняются. Как скажем "InnerNotebook" и "OuterNotebook", их нужно выбирать вручную (с правого бока):

как выбрал один из них. Переходишь к диалогу, ухватываешь за край и расширяешь.

Цитата Farser21:
очень маленькое окно, подскажите как его сделать больше? »
Скорее всего тебя интересует "InnerNotebook".
Только будь готов к тому что, придётся увеличивать размер окна и изменять все формы.

-------
09a468a9b4293cd82adf6d6c60a9da82 | Tm9yZGVr
В связи со сменой железа и переходом на LInux с полным отказом от Windows - посещение на форуме будет редким.


Последний раз редактировалось Nordek, 10-12-2013 в 18:43.


Отправлено: 16:38, 09-12-2013 | #1665


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


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

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


Mat_y, Nordek спасибо. Только куда вставлять этот код?
читать дальше »
ComponentsList := TLabel.Create(WizardForm);
with ComponentsList do begin
WizardForm.ComponentsList.Left:= ScaleX(30)///положение панели
WizardForm.ComponentsList.Top:= ScaleY(100);
WizardForm.ComponentsList.Width:= ScaleX(400)///размер панели
WizardForm.ComponentsList.Height:= ScaleY(220)
WizardForm.ComponentsList.Color:= $272727;///цвет фона в панели страници компонентов
WizardForm.ComponentsList.Font.Color:= ClWhite;///цвет текста в панели страници компонентов
WizardForm.ComponentsList.Font.Style:= [fsBold];
WizardForm.ComponentsList.Font.Size:= 8;
WizardForm.ComponentsList.Font.Name:= 'Arial'
WizardForm.ComponentsList.Parent:= WizardForm.SelectComponentsPage;
WizardForm.SelectComponentsPage;
end;

Отправлено: 18:41, 09-12-2013 | #1666


Аватара для Tco 03

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


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

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


Цитата Farser21:
Только куда вставлять этот код? »
В любое место процедуры InitializeWizard
Достаточно просто:

procedure InitializeWizard();
begin
WizardForm.ComponentsList.SetBounds(ScaleX(30), ScaleY(100), ScaleX(400), ScaleY(220));
end;

Отправлено: 18:54, 09-12-2013 | #1667


SHVtYW4=


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

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


Farser21, Вот пример инсталла набросал:
читать дальше »
Код: Выделить весь код
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=.

[Tasks]
Name: a; Description: a
Name: b; Description: b
Name: c; Description: c
Name: d; Description: d
Name: e; Description: e

[Components]
Name: a; Description: a
Name: b; Description: b
Name: c; Description: c
Name: d; Description: d
Name: e; Description: e

[Code]
procedure InitializeWizard();
begin
  with WizardForm do
  begin
    ClientHeight := ScaleY(434);
    ClientWidth := ScaleX(609);
  end;

  with WizardForm.Bevel do
  begin
    Top := ScaleY(393);
    Width := ScaleX(610);
  end;

  with WizardForm.CancelButton do
  begin
    Left := ScaleX(516);
    Top := ScaleY(399);
  end;

  with WizardForm.NextButton do
  begin
    Left := ScaleX(431);
    Top := ScaleY(399);
  end;

  with WizardForm.BackButton do
  begin
    Left := ScaleX(355);
    Top := ScaleY(399);
  end;

  with WizardForm.OuterNotebook do
  begin
    Width := ScaleX(609);
    Height := ScaleY(393);
  end;

  with WizardForm.WizardBitmapImage do
  begin
    Height := ScaleY(393);
  end;

  with WizardForm.WelcomeLabel2 do
  begin
    Width := ScaleX(429);
  end;

  with WizardForm.WelcomeLabel1 do
  begin
    Width := ScaleX(429);
  end;

  with WizardForm.Bevel1 do
  begin
    Width := ScaleX(610);
  end;

  with WizardForm.InnerNotebook do
  begin
    Width := ScaleX(529);
    Height := ScaleY(317);
  end;

  with WizardForm.LicenseNotAcceptedRadio do
  begin
    Top := ScaleY(280);
  end;

  with WizardForm.LicenseAcceptedRadio do
  begin
    Top := ScaleY(260);
  end;

  with WizardForm.LicenseMemo do
  begin
    Width := ScaleX(529);
    Height := ScaleY(220);
  end;

  with WizardForm.InfoBeforeMemo do
  begin
    Width := ScaleX(529);
    Height := ScaleY(277);
  end;

  with WizardForm.DiskSpaceLabel do
  begin
    Top := ScaleY(304);
  end;

  with WizardForm.ComponentsDiskSpaceLabel do
  begin
    Top := ScaleY(304);
  end;

  with WizardForm.ComponentsList do
  begin
    Width := ScaleX(528);
    Height := ScaleY(208);
  end;

  with WizardForm.TypesCombo do
  begin
    Width := ScaleX(528);
  end;

  with WizardForm.NoIconsCheck do
  begin
    Top := ScaleY(303);
  end;

  with WizardForm.TasksList do
  begin
    Width := ScaleX(528);
    Height := ScaleY(260);
  end;

  with WizardForm.ReadyMemo do
  begin
    Width := ScaleX(529);
    Height := ScaleY(277);
  end;

  with WizardForm.PreparingMemo do
  begin
    Width := ScaleX(481);
    Height := ScaleY(193);
  end;

  with WizardForm.FilenameLabel do
  begin
    Width := ScaleX(528);
  end;

  with WizardForm.ProgressGauge do
  begin
    Width := ScaleX(528);
  end;

  with WizardForm.InfoAfterMemo do
  begin
    Width := ScaleX(528);
    Height := ScaleY(277);
  end;

  with WizardForm.MainPanel do
  begin
    Width := ScaleX(609);
  end;

  with WizardForm.WizardSmallBitmapImage do
  begin
    Left := ScaleX(552);
  end;

  with WizardForm.WizardBitmapImage2 do
  begin
    Height := ScaleY(393);
  end;

  with WizardForm.RunList do
  begin
    Width := ScaleX(413);
    Height := ScaleY(227);
  end;

  with WizardForm.FinishedLabel do
  begin
    Width := ScaleX(421);
  end;

  with WizardForm.FinishedHeadingLabel do
  begin
    Width := ScaleX(421);
  end;
end;

-------
09a468a9b4293cd82adf6d6c60a9da82 | Tm9yZGVr
В связи со сменой железа и переходом на LInux с полным отказом от Windows - посещение на форуме будет редким.


Отправлено: 19:36, 09-12-2013 | #1668


Аватара для nik1967

Старожил


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

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


Изображения
Тип файла: jpeg Snapshot_130.jpeg
(14.0 Kb, 17 просмотров)

Цитата El Sanchez:
Ну раз обещал, последняя моя версия: »
Спасибо большое за скрипт закачки! Пара вопросов - можно ли как то изменить МБ на MB при переключении на другую локаль? Всё остальное решаемо с помощью [CustomMessages].
И да, ещё - если кликнуть и удерживать л.к.м. на верхней части инсталлятора (так сказать, поставить на паузу) - инсталлятор зависает .
А, нет - ещё и сек на sec в строке прошло (Elapsed).

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


Последний раз редактировалось nik1967, 10-12-2013 в 00:48.


Отправлено: 23:34, 09-12-2013 | #1669


Аватара для habib2302

Ветеран


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

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


доброе время суток.как добавить 2-ой путь в скрипт для удаления настроек/сохранений
Код: Выделить весь код
 procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
 begin
 case CurUninstallStep of
 usPostUninstall:
 if DirExists(AddBackslash(ExpandConstant('{userdocs}')) + 'Мои игры\The Saboteur™\Сохранения') then
 begin
 if MsgBoxEx(0, 'Удалить сохранения игры находящиеся по адресу:' + #13#13 + AddQuotes(AddBackslash(ExpandConstant('{userdocs}')) + 'Мои игры\The Saboteur™\Сохранения'), 'Удаление сохранений', $00000004 or $00000020, 0, 0) = IDYES then
 DelTree(AddBackslash(ExpandConstant('{userdocs}')) + 'Мои игры\The Saboteur™\Сохранения', True, True, True);
 end;
 end;
 end;

-------
Помог? От "Полезное сообщение" не откажусь!!!


Отправлено: 09:54, 10-12-2013 | #1670



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




 
Переход