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

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

 

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


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

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


Привет!
Есть код
Код: Выделить весь код
[_Cоde]
var
  CustomPage1: TWizardPage;
  Edit1: TNewEdit;
  Button1: TNewButton;

procedure Button1Click(Sender: TObject); forward;

procedure InitializeWizard();
begin
  CustomPage1 := CreateCustomPage(wpSelectDir, 'Caption', 'Description');

  Edit1 := TNewEdit.Create(WizardForm);
  with Edit1 do
  begin
    Parent := CustomPage1.Surface;
    Left := ScaleX(0);
    Top := ScaleY(68);
    Width := ScaleX(332);
    Height := ScaleY(21);
  end;

  Button1 := TNewButton.Create(WizardForm);
  with Button1 do
  begin
    Parent := CustomPage1.Surface;
    Left := ScaleX(342);
    Top := ScaleY(67);
    Width := ScaleX(75);
    Height := ScaleY(23);
    Caption := 'Button';
    OnClick := @Button1Click;
  end;
end;

procedure Button1Click(Sender: TObject);
begin

end;
Как сделать чтоб при нажатии кнопки Button, можно было выбрать папку а в TNewEdit выводился путь выбранной папки?
В выходе то что на странице CustomPage1 нужно чтоб все было тоже самое как на странице SelectDirPage, т.е через Button выбиралась папка, в TNewEdit выводился путь, только выбиралось это для записи в реестр, т.е при установке записывалось значение в реестр выбранной папки
Код: Выделить весь код
Root: HKCU; SubKey: Software\Mini-Game\Game\Share paths; ValueType: string; ValueName: ShareFolder; ValueData: """{app}\Mini-Game\Game\"","; Flags: uninsdeletevalue uninsdeletekeyifempty

Отправлено: 02:03, 29-10-2013 | #1381



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

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


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


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

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


Всем доброе утро! Подскажите пожалуйста скрипт на установку dxwebsetup и vcredist_x86 Заранее благодарю.
З.Ы. Если можно то желательно можно было выбирать в меню и устанавливалось в конце установки перед нажатием кнопки завершить. Очень нужно, помогите пожалуйста!!!

Отправлено: 07:31, 29-10-2013 | #1382


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


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

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


Цитата Антон_Мураткин@vk:
скрипт на установку dxwebsetup и vcredist_x86 »
Взято из примера

читать дальше »
Код: Выделить весь код
[Tasks]
Name: Redist; Description: Дополнительное программное обеспечение: 
Name: Redist\DirectXCheck; Description: Обновить DirectX; Flags: unchecked
Name: Redist\VCCheck; Description: Установить Microsoft Visual C++ Redist; Flags: unchecked

[Run]
Filename: {src}\Redist\vcredist_x86.exe; Parameters: /q; StatusMsg: Устанавливаем Microsoft Visual C++ Redist...; Flags: skipifdoesntexist; Tasks: Redist\VCCheck
Filename: {src}\Redist\vcredist_x64.exe; Parameters: /q; StatusMsg: Устанавливаем Microsoft Visual C++ Redist...; Flags: skipifdoesntexist; Tasks: Redist\VCCheck
Filename: {src}\Redist\DirectX.exe; Parameters: /silent; StatusMsg: Обновляем DirectX...; Flags: skipifdoesntexist; Tasks: Redist\DirectXCheck

Последний раз редактировалось Cipso, 29-10-2013 в 17:42.


Отправлено: 11:31, 29-10-2013 | #1383


Аватара для Mafia_forever

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


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

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


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

Отправлено: 18:15, 29-10-2013 | #1384


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


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

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


Cipso, Так этот код мне не даёт что именно мне надо.

В независимости выберишь ты эти дополнение установки они всё равно устанавливаются автоматом.

А мне надо как у репакеров это делается. Кто знает подскажите

Отправлено: 18:18, 29-10-2013 | #1385


SHVtYW4=


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

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


Цитата Антон_Мураткин@vk:
Так этот код мне не даёт что именно мне надо. »
Антон_Мураткин@vk, Чем ответ от Cipso не угодил?
Так используй IStool, Inno Script Studio, InnoIDE, они умеют это делать.

Вот через IStool накидал
Код: Выделить весь код
[Tasks]
Name: a; Description: Дополнительно
Name: a/dx; Description: DirectX
Name: a/vc; Description: Visual C++

[Run]
Filename: {src}\vcredist.exe; Parameters: /q; StatusMsg: Установка Visual C++; Tasks: a/vc
Filename: {src}\DirectX.exe; Parameters: /silent; StatusMsg: Установка DirectX; Tasks: a/dx
Могу ещё десяток таких набить.

Цитата Антон_Мураткин@vk:
всё равно устанавливаются автоматом. »
А ты действительно уверен в том что установка происходит?
Заметь, там присутствует флаг skipifdoesntexist
Код: Выделить весь код
Flags: skipifdoesntexist;
который в случае отсутствия файла, пропускает его выполнение т.е в таком случае не выводит предупреждение о том что файл не существует.


читать дальше »

{src} - Внешний путь.

Если у тебя например так
Код: Выделить весь код
[Run]
Filename: {src}\vcredist.exe
Filename: {src}\DirectX.exe
то это означает что твои DirectX и Visual C++ должны находиться рядом с инсталлятором.

если например так
Код: Выделить весь код
[Run]
Filename: {src}\Моя_Папка\vcredist.exe
Filename: {src}\Моя_Папка\DirectX.exe
то это означает что рядом с инсталлятором должна быть создана папка с названием "Моя_Папка" а в ней твои DirectX и Visual C++.




[Tasks] - Это задача

В задачах обрати внимание на Name
в Name должно быть буквенное или буквенно-числовое обозначение

Код: Выделить весь код

[Tasks]
Name: a/ab
Name: a/ac
т.е если нужно чтоб происходило выполнение в зависимости от выбранной задачи, то в [Run] в Filename должен присутствовать Tasks: с буквенным или буквенно-числовым обозначением в зависимости от того что прописанного в [Tasks]

Код: Выделить весь код

[Run]
Filename: {src}\vcredist.exe; Tasks: a/ab
Filename: {src}\DirectX.exe;  Tasks: a/ac

Description - Это описание/название компонента

Код: Выделить весь код

[Tasks]
Name: a/ab; Description: Это мой DirectX
Name: a/ac; Description: Это мой Visual C++

Последний раз редактировалось Nordek, 29-10-2013 в 20:28.

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:20, 29-10-2013 | #1386


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


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

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


Цитата Cipso:
Как сделать
Помогите решить

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


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

Ветеран


Contributor


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

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


Цитата Cipso:
Как сделать чтоб при нажатии кнопки Button, можно было выбрать папку а в TNewEdit выводился путь выбранной папки? »
Cipso,
Код: Выделить весь код
procedure BrowseButton(Sender: TObject);
var
    szDir: String;
begin
    if BrowseForFolder('', szDir, True) then Edit1.Text := szDir;
end;
Цитата Cipso:
через Button выбиралась папка, в TNewEdit выводился путь, только выбиралось это для записи в реестр, т.е при установке записывалось значение в реестр выбранной папки »
Cipso,
Код: Выделить весь код
[Registry]
Root: HKCU; SubKey: Software\Mini-Game\Game\Share paths; ValueType: string; ValueName: ShareFolder; ValueData: {code:SetValueData|}; Flags: uninsdeletevalue uninsdeletekeyifempty

[code]
function SetValueData(Param: String): String;
begin
    Result := Format('"%s\,"', [Edit1.Text]);
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:28, 30-10-2013 | #1388


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


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

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


Цитата El Sanchez:
Код: »
Огромное спасибо! Очень выручили.
Вопрос, получается полный код будет таким
Код: Выделить весь код
[Registry]
Root: HKCU; SubKey: Software\Mini-Game\Game\Share paths; ValueType: string; ValueName: ShareFolder; ValueData: {code:SetValueData|}; Flags: uninsdeletevalue uninsdeletekeyifempty

[_Code]
var
  CustomPage1: TWizardPage;
  Edit1: TNewEdit;
  Button1: TNewButton;
  szDir: String;

procedure BrowseButton(Sender: TObject); forward;

    
procedure InitializeWizard();
begin
  CustomPage1 := CreateCustomPage(wpSelectDir, 'Caption', 'Description');

  Edit1 := TNewEdit.Create(WizardForm);
  with Edit1 do
  begin
    Parent := CustomPage1.Surface;
    Left := ScaleX(0);
    Top := ScaleY(68);
    Width := ScaleX(332);
    Height := ScaleY(21);
  end;

  Button1 := TNewButton.Create(WizardForm);
  with Button1 do
  begin
    Parent := CustomPage1.Surface;
    Left := ScaleX(342);
    Top := ScaleY(67);
    Width := ScaleX(75);
    Height := ScaleY(23);
    Caption := 'Button';
    OnClick := @BrowseButton;
  end;
end;

procedure BrowseButton(Sender: TObject);
begin
    if BrowseForFolder('', szDir, True) then Edit1.Text := szDir;
end;

function SetValueData(Param: String): String;
begin
    Result := Format('"%s\,"', [Edit1.Text]);
end;
???

Все верно я вставил?

Отправлено: 19:59, 30-10-2013 | #1389


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


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

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


ребята подскажите как добавить кнопки вот здесь


Отправлено: 22:53, 30-10-2013 | #1390



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




 
Переход