Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)

Модерирует : gyra, Maz

Widok (29-12-2008 12:26): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Это мощное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки. Можно создавать свои страницы, используя Inno Setup Form Designer.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта.  
 
Последний релиз: 5.2.3 [10.03.2008]
История версий | скачать | все сборки || Скачать Preprocessor | все сборки
 
Русификатор от NightW0lf для версии 5.2.0
Скачать | зеркало
 
Русская справка к версиям 5.0.x, автор перевода BagIra
Скачать | зеркало || cкачать в .chm формате
 
Руководство по расширенным возможностям Inno Setup 5 (не для чайников) от Kindly
Версия 5.1 скачать || версия 5 скачать|зеркало || версия 4 скачать|зеркало || версия 3 скачать|зеркало
 
Inno Setup Extensions Knowledge Base (содержит ответы на многие вопросы)
Новая версия (Web-интерфейс) || Старая chm-версия скачать | зеркало
 
Коллекция скриптов и Сборник вопросов, собранных из этой и предыдущих частей топика.
 
Corona Skin & Check System Requirements от Victor_Dobrov
Скачать | зеркало | скриншот | описание | старая версия || InnoSetup Upgrade || Слайд-шоу
Обложка для Inno Setup. Сделает инсталлятор более симпатичным и добавляет расширения: Проверка минимальных требований. Расширенный прогрессбар. Расчёт времени до завершения распаковки. Список дисков. Слайдшоу или AVI-файл в фоновом окне. Компактный режим установки. Деинсталляция неучтённых файлов. Экран справки/скриншота. Медиаплеер и многое другое...
 
Примечание: Если необходимо использовать метод проверки внешнего файла через сумму MD5 (который описан в 5 версии руководства от Kindly) для запуска инсталлятора, то понадобится калькулятор хеша MD5, калькулятор сумм MD5, SHA-256, CRC32. Если требуется узнать, какие ключи реестра меняет та или иная программа, используйте RegShot. Чтобы растянуть фоновый рисунок на весь экран, в версии Inno Setup 5.1.10 и выше используйте этот код.

Дополнительные утилиты для Inno Setup


Мощная надстройка для Inno Setup, при помощи которой создавать свои инсталляторы становится очень просто.
 
Последний релиз: 5.2.1 [15.10.2007]
Скачать | зеркало || Русификатор | зеркало

Простой мастер создания скрипта для установки одной или нескольких игр. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации.
 

Прежнее название ScriptMaker. Удобная оболочка для облегчения написания скриптов установки для Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
 
Последний релиз: 1.0.3.1 [23.03.2008]
Скачать | обновить (нужен QuickStartPack 5.2.3)

Распаковщик установок, сделанных с помощью Inno Setup. При распаковке извлекаются  ресурсы и скрипт установки (немного усечённый). Возможно подключение к Total Commander или FAR с помощью MultiArc плагинов.
Поддерживает распаковку инсталляторов, сделанных с помощью Inno Setup начиная с версии 3.0.0-beta по 5.2.3
 
Последний релиз: 0.20 [23.05.2008] New
Скачать | Расширенная версия (с поддержкой русского языка)  

Примечание для всех участников

Объёмные скрипты или части кода заключайте в тег more, чтобы ваш вопрос в сообщении не затерялся среди множества строк прилагаемого скрипта.

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 18:16 17-06-2008 | Исправлено: equis, 17:51 06-12-2008
Artem_Butenko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_Dobrov
 
Я все с тем же наболевшим вопросом по поводу создания лоадера программ на Inno Setup. Недавно написал скрипт, отчасти помогающий реализовать задуманное.
Но при реализации скрипта на практике возникают проблемы такого содержания:
- внешние исполняемые файлы (MyProgram.ex_ и MyProgram2.ex_) почему-то запаковываются в инсталлятор. Хотя компилируются с константами {src};
- файл MyProgram.ex_ выполняется непонятно почему дважды(!), хотя MyProgram2.ex_ срабатывает один раз (как и необходимо);
- если из скрипта убрать процедуру прозрачности окон, то в конце установки на некоторое время появляется пустая форма окна с прогресс-баром. Хотелось бы "побороть" этот трабл более эстетичным образом, нежели назначения абсолютной прозрачности окнам лоадера.
Пожалуйста, подскажите в правильном ли направлении я развиваю этот скрипт, или, что-то можно сделать иначе, более рационально. Во всяком случае буду рад Вашей помощи!
 
Добавлено:
Совсем забыл, а можно ли убрать отображение окна лоадера (во время исполнения внешнего файла) на панели быстрого запуска?
 

Всего записей: 711 | Зарегистр. 19-02-2008 | Отправлено: 14:11 09-11-2008 | Исправлено: Artem_Butenko, 14:46 09-11-2008
mav34

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
htuos

Цитата:
mav34  
Цитата:В командной строке нет таких параметров  
тебе никто не мешает передавать инсталлятору свои параметры. читаем хелп по ParamCount и ParamStr  
Цитата:а дополнительное окно для выбора пути вылезает каждый раз, до выбора компонентов.  
страницы можно поменять местами, это уже обсуждалось. соответственно в зависимости от выбранных компонентов можно и надпись изменить для выбора пути

 
Спасибо, с этим разобрался. Очередной вопрос: как привязать TimeLimit (ограничение на запуск по дате)  
Author: Vincenzo  
Article created: 10/05/03 19:32:01
Article URL : http://www.vincenzo.net/isxkb/modules.php?name=News&file=article&sid=48
 
к кнопке Далее на первой странице?  
 
Автор: Victor_Dobrov - реализовал в своём "Corona Skin", но использовать этот вариант в целом я ещё не готов

Всего записей: 47 | Зарегистр. 27-02-2005 | Отправлено: 15:11 09-11-2008 | Исправлено: mav34, 15:24 09-11-2008
Sampron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Artem_Butenko

Цитата:
если из скрипта убрать процедуру прозрачности окон, то в конце установки на некоторое время появляется пустая форма окна с прогресс-баром.

Так вынеси форму за пределы экрана.

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 15:29 09-11-2008
Diawer

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спрашивал, как сделать выпадающее языковое меню как в Inno Setup в одну строку, где при нажатии стрелочки справа вываливается окно с языками. Вот код………..
 
 
Добавлено:
он на два языка (просто мне нужно на более 20 языков, а прокрутка в Таске как то не смотрится) может, у кого получится преобразовать из него, или скажите где посмотреть, перерыл все, что у меня есть, не нашел.  

Всего записей: 180 | Зарегистр. 08-05-2007 | Отправлено: 16:43 09-11-2008
Artem_Butenko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sampron -- если выносить форму за пределы экрана используя пример из руководства товарища Kindly, то ничего не получается. А иного варианта я не знаю. Если есть возможность, пожалуйста, помогите мне. Выше я задавал вопрос, как сделать абсолютно "тихий" инсталл, чтобы, даже при запуске через него внешнего *.exe, заголовок окна "тихого" инсталла не появлялся бы на панели быстрого запуска. Т.е., реально ли сделать так, чтобы "тихий" инсталл (написанный в Inno Setup) функционировал как процесс, без "отрисовки" графического интерфейса?

Всего записей: 711 | Зарегистр. 19-02-2008 | Отправлено: 17:36 09-11-2008
Sampron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Artem_Butenko
Как убрать с панели запуска я незнаю, а вынести форму за пределы экрана чтобы не отображалась страница установки можно так
Diawer
Попробуй так

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 18:05 09-11-2008
Dimbay

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
STRATOSV

Всего записей: 56 | Зарегистр. 06-08-2007 | Отправлено: 18:43 09-11-2008
Artem_Butenko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sampron -- спасибо за быструю помощь, я и не думал, что скрипт м.б. таким компактным!

Всего записей: 711 | Зарегистр. 19-02-2008 | Отправлено: 19:23 09-11-2008
GriSky

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
К вопросу который я задавал добавлю код, может будет понятней, используется Corona Skin, извиняюсь если выглядит все нелепо, недели две занимаюсь установщиками вообще,  в секции [ini] есть уже примерно что надо  
код

Всего записей: 4 | Зарегистр. 09-11-2008 | Отправлено: 19:25 09-11-2008
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребят, ну объясните пож. как реализовать http://forum.ru-board.com/topic.cgi?forum=5&topic=27438&start=1420#15 Почитал хелп, оказывается abort; можно вызывать только из  
InitializeSetup
InitializeWizard
CurStepChanged(ssInstall)
InitializeUninstall
CurUninstallStepChanged(usAppMutexCheck)
CurUninstallStepChanged(usUninstall)
Может можно как-то реализовать через препроцессор, чтоб программа запускалась пусть даже из CurStepChanged, но только после копирования определенного файла из секции [files], а не сразу при начале установки?

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 19:25 09-11-2008
htuos

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Artem_Butenko

Цитата:
Совсем забыл, а можно ли убрать отображение окна лоадера (во время исполнения внешнего файла) на панели быстрого запуска?  

это называется панель задач
убрать кнопку приложения с панели задач можно так

Код:
function GetWindowLong(Wnd: HWND; Index: Integer): Longint;external 'GetWindowLongA@user32.dll stdcall';
 
procedure InitializeWizard;
begin
  ShowWindow(GetWindowLong(MainForm.Handle,-8),0);
end;

Всего записей: 335 | Зарегистр. 06-03-2008 | Отправлено: 20:25 09-11-2008 | Исправлено: htuos, 20:28 09-11-2008
Artem_Butenko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
htuos -- что же не знал, но, в любом случае, буду использовать Ваш вариант. За что - большое спасибо!

Всего записей: 711 | Зарегистр. 19-02-2008 | Отправлено: 20:51 09-11-2008
htuos

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Artem_Butenko
а вообще я бы сделал так

Код:
function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;external 'GetWindowLongA@user32.dll stdcall';
function SetWindowLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint;external 'SetWindowLongA@user32.dll stdcall';
function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL; external 'ShowWindow@user32.dll stdcall';
 
procedure InitializeWizard;
var
  TAppHandle: HWND;
begin
  TAppHandle:=GetWindowLong(MainForm.Handle,-8);                       //получаем хэндл Application'a
  // *** убираем окно с экрана
  WizardForm.BorderStyle:=bsNone;
  WizardForm.Width:=0;
  WizardForm.Height:=0;
  // ****
  ShowWindow(TAppHandle,0);                                            //скрываем с панели задач
  SetWindowLong(TAppHandle,-20,GetWindowLong(TAppHandle,-20) or $80);  //скрываем от Alt+Tab
end;
 

т.к. я не уверен, что при наличии 2 и более мониторов сдвиг формы тебя спасет
да форму обратно на экран можно затащить
 
ЗЫ от Alt+Tab надо тоже скрывать иначе активировав форму кнопка на панели задач опять появится
 
 
 
Добавлено:
Diawer

Цитата:
Спрашивал, как сделать выпадающее языковое меню как в Inno Setup в одну строку, где при нажатии стрелочки справа вываливается окно с языками.

используй ComboBox
 

Цитата:
TCustomComboBox = class(TWinControl)
  property DroppedDown: Boolean; read write;
  property Items: TStrings; read write;
  property ItemIndex: Integer; read write;
end;
 
TComboBox = class(TCustomComboBox)
  property Style: TComboBoxStyle; read write;
  property Color: TColor; read write;
  property DropDownCount: Integer; read write;
  property Font: TFont; read write;
  property MaxLength: Integer; read write;
  property Sorted: Boolean; read write;
  property Text: String; read write;
  property OnChange: TNotifyEvent; read write;
  property OnClick: TNotifyEvent; read write;
  property OnDblClick: TNotifyEvent; read write;
  property OnDropDown: TNotifyEvent; read write;
  property OnKeyDown: TKeyEvent; read write;
  property OnKeyPress: TKeyPressEvent; read write;
  property OnKeyUp: TKeyEvent; read write;
end;
 
TNewComboBox = class(TComboBox)
end;

 
как обычно Create, Parent, Left, Top, потом заполняешь (Items.Add) вобщем все достаточно просто
 
Sampron уже пример дал, не заметил
 
 
Добавлено:
mav34

Цитата:
Очередной вопрос: как привязать TimeLimit (ограничение на запуск по дате)  

ты же сам дал ответ
тоже самое и пишешь
Подробнее...
 
Добавлено:
Sig666

Цитата:
Может можно как-то реализовать через препроцессор, чтоб программа запускалась пусть даже из CurStepChanged, но только после копирования определенного файла из секции [files], а не сразу при начале установки?

может тебе проще руками распаковать необходимый файл при инициализации инсталлятора, запустить свой test.exe, а дальше уже продолжать или нет в зависимости от результата

Всего записей: 335 | Зарегистр. 06-03-2008 | Отправлено: 22:27 09-11-2008 | Исправлено: htuos, 23:14 09-11-2008
mav34

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
htuos
Спасибо, но не работает

Всего записей: 47 | Зарегистр. 27-02-2005 | Отправлено: 23:36 09-11-2008
htuos

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mav34

Цитата:
Спасибо, но не работает  

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

Всего записей: 335 | Зарегистр. 06-03-2008 | Отправлено: 23:53 09-11-2008
mav34

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
приведенный код не дает продолжать установку приложения, если дата на компе больше 01.11.2008

даёт, поэтому и говорю
 
Извини, ошибся сам. Разглядел не сразу

Всего записей: 47 | Зарегистр. 27-02-2005 | Отправлено: 00:29 10-11-2008 | Исправлено: mav34, 00:32 10-11-2008
iltmpz

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Diawer
Спасибо, тоже хороший вариант с подсказками.
В моем случае правда справа подсказка больше подходит, но сохраню и этот вариант на будущее.
И с многоязычностью кстати тоже актуально - тоже ExpandConstant использовал.
 
All
Кстати, другой вопрос:
Допустим, есть описание, и я его использую в коде:
russian.ComponentsDescription6=Прочитать руководство пользователя
ExpandConstant('{cm:ComponentsDescription6};')
 
А можно ли в описание вставить переход на новую строку (enter)?
По типу:
russian.ComponentsDescription6=Прочитать руководство\nпользователя
 
Пробовал \n, пытался написать %0d%0a с вызовами функций Format, обработки %-последовательностей. Символы в enter не преобразуются.

Всего записей: 281 | Зарегистр. 05-04-2006 | Отправлено: 00:32 10-11-2008
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
htuos
 
Мне нужно пропатчить несколько больших файлов сразу после установки каждого. Вместо test.exe будет сам патчер (для каждого файла свой).

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 00:33 10-11-2008
mav34

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Символы в enter не преобразуются

a CRLF не проходит?

Всего записей: 47 | Зарегистр. 27-02-2005 | Отправлено: 00:50 10-11-2008
boss911



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Удалено, сори.

Всего записей: 3704 | Зарегистр. 29-01-2005 | Отправлено: 01:37 10-11-2008 | Исправлено: boss911, 01:47 10-11-2008
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)
Widok (29-12-2008 12:26): лимит страниц. продолжаем здесь


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru