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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Kindly



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
Цитата:
ExtractFilePath - подозреваю, это то, что тебе надо.
Спасибо! Самое оно.

Всего записей: 3000 | Зарегистр. 04-08-2005 | Отправлено: 20:13 28-09-2008
putes

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
найдутся ли умельцы, кто сделает инсталляционный пакет для автоматической установке и удаления данного драйвера?
_http://www.antistarforce.com/forum/6-1610-1
 

Всего записей: 125 | Зарегистр. 06-02-2005 | Отправлено: 10:12 29-09-2008 | Исправлено: putes, 12:22 29-09-2008
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
putes -- Подробнее...  
devcon.exe найдешь в инете

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 21:53 29-09-2008
putes

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

Всего записей: 125 | Зарегистр. 06-02-2005 | Отправлено: 22:49 29-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Народ, хотел ещё кое-что спросить!

Код:
;setup
AppVerName=Прога № {code:ReturnAppVer}
;code
function ReturnAppVer(param : String): String;
var
  st : TStringlist;
begin
  st:=TStringlist.create;
  st.loadfromfile('d:\Release\ver.id');  
  Result := st.strings[0];
 
end;

Как сделать, чтоб не было прямой ссылки к d:\Release\ver.id, а относительной - например, относительно папки со скриптом!?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 22:59 29-09-2008
SotM



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
An4eus
Посмотри в хелпе раздел Константы (Constants).

Всего записей: 965 | Зарегистр. 28-11-2006 | Отправлено: 11:35 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SotM
так там есть, откуда приложение запускается, куда устанавливается и тд.
а мне нужно откуда скрипт запускается, т.к. файл ver.id в установке не  нужен

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 12:17 30-09-2008
Genri

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

Цитата:
мне нужно откуда скрипт запускается, т.к. файл ver.id в установке не  нужен
-- в том примере, который ты привел, при каждом запуске инсталлятора на компе пользователя, будет осуществлятся поиск ver.id. И если файл не найден, будет ошибка.
Для примера можешь скомпилить у себя екзешник, потом удалить файл ver.id и попробовать запустить инсталляцию.  
Не совсем понятно, какого эффекта ты хочешь добиться.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 12:48 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Genri
хочу сделать неизменяемый скрипт...
прога постоянно меняется => меняется версия её
для этого в секции setup и написал AppVerName=Прога № {code:ReturnAppVer}

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 13:24 30-09-2008
SotM



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

Цитата:
для этого в секции setup и написал AppVerName=Прога № {code:ReturnAppVer}

Ну и??? При запуске этой проги всё равно нужен этот .id файл. Не будет файла и прога работать не будет. Для себя реши в конце концов, что нужно, а то складывается впечатление, что сам не знаешь что хочешь.
Inno - это установщик, если хочешь использовать .id файл, то засунь его в инсталлятор и при распаковке открывай его. Хотя тоже не понятно зачем это нужно. Логично вообще прописать номер версии внутри кода.
 

Всего записей: 965 | Зарегистр. 28-11-2006 | Отправлено: 14:14 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SotM
код нужно отдать.. кому отдам - ни в чём не шарит!
вообще я понял, нужно ver.id поместить в setup, но распаковывать из temp'a...
Как это тогда релазизовать?
 
можно ли в секции setup для OutputDir сделать переменную папку (в зависимости от ver.id)?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 14:31 30-09-2008
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
An4eus -- что из себя представляет ver.id ? Приведи пример содержимого. Можно ли поменять формат содержимого файла ver.id  ?

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 14:45 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Genri
текстовый файл:

Код:
23.1/1.2367


----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 15:28 30-09-2008
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
An4eus -- Судя по тому, что ты не ответил на вопрос можно или нет поменять содержимое файла ver.id, будем считать что нельзя. Так же, судя по приведенному тобой примеру скрипта, будем считать, что версией является вся строка - 23.1/1.2367, а не ее часть. Так как путь должен быть относительным по отношению к файлу скрипта, но где именно (относительно файла скрипта) находится файл ver.id не указано, будем предполагать, что файл ver.id находится рядом с файлом скрипта.
С учетом вышеизложенных предположений, реализовать требуемую задачу, можно примерно таким образом.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 20:14 30-09-2008 | Исправлено: Genri, 20:19 30-09-2008
LOGANXFI



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет всем !
 
Ребята подскажите пожалуйста как добавить в скрипт такие функции:
 
Мне нужно чтобы инсталятор можно было использовать один раз , при попытке повторного использовании инсталятор выдавал сообщение "1111111111111" и закрывал инсталятор.
 
А лучше всего такую функцию - после окончания установки приложения , инсталятор и все файлы .bin принадлежащие инсталятору автоматически удалялись с винчестера напрочь.
 
 
Вот сам скрипт.
 

Код:
[Setup]
AppId={{F56C23C4-B56E-45A3-9ED2-145060A2E545}
AppName=InfinityWards
AppVerName=Call of Duty 4 Multiplayer Pack
AppPublisher=InfinityWards, Inc.
AppPublisherURL=http://callofduty.tomsk.ru
AppSupportURL=http://callofduty.tomsk.ru
AppUpdatesURL=http://callofduty.tomsk.ru
DefaultDirName={reg:HKLM\Software\Activision\Call of Duty 4,InstallPath}
DisableDirPage=yes
DefaultGroupName=Call of Duty 4 Pack
DisableProgramGroupPage=yes
LicenseFile=C:\Documents and Settings\licence.txt
InfoBeforeFile=C:\Documents and Settings\info.txt
InfoAfterFile=C:\Documents and Settings\info after.txt
OutputDir=G:\COD4
OutputBaseFilename=Setup_COD4Pack
SetupIconFile=E:\GAMES\COD4 Mod Tools\cod4.ico
Compression=lzma
SolidCompression=yes
DiskSpanning=yes
SlicesPerDisk=1
DiskSliceSize=1728760320
 
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
 
[Files]
Source: "G:\COD4\*"; DestDir: {app}; AfterInstall: ExtLog; Flags: recursesubdirs
 
[Messages]
BeveledLabel=http://callofduty.tomsk.ru
 
[Icons]
Name: "{group}\{cm:UninstallProgram,Call of Duty 4 Pack}"; Filename: "{uninstallexe}"
 
[Code]
var
ResultStr:string;
ResultCode: Integer;
 
function InitializeSetup(): Boolean;
begin
RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{F56C23C4-B56E-45A3-9ED2-145060A2E545}_is1', 'UninstallString', ResultStr)
if ResultStr='' then
begin
Result := True;
end
else
ResultStr:=RemoveQuotes(ResultStr);
Exec(ResultStr, '', '', SW_SHOWNORMAL, ewNoWait, ResultCode)
end;
 
var
ProgressLabel: TLabel;
 
procedure ExtLog();
begin
WizardForm.FileNameLabel.Visible:= False;
with WizardForm.ProgressGauge do begin
ProgressLabel.Caption:= IntToStr((Position-Min)/((Max - Min)/100)) + '%';
end;
end;
 
procedure InitializeWizard;
begin
ProgressLabel := TLabel.Create(WizardForm);
with WizardForm.ProgressGauge do
begin
ProgressLabel.Top:= Top + Height + ScaleY(8)
ProgressLabel.Left:= Left + Width/2 - ScaleX(8)
ProgressLabel.Caption:= '0%'
ProgressLabel.AutoSize:= True
ProgressLabel.Transparent:= True;
ProgressLabel.Parent:= WizardForm.InstallingPage
end;
end;

 
Помогите пожалуйста очень надо !!!

Всего записей: 7 | Зарегистр. 02-09-2008 | Отправлено: 21:49 30-09-2008 | Исправлено: LOGANXFI, 22:09 30-09-2008
LinkX

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как можно убрать окно с сообщением (когда произведена деинсталляция, но не все файлы удалились) "Деинсталляция %1 завершена.%n%nЧасть элементов не удалось удалить. Вы можете удалить их самостоятельно.". Если это возможно, очень надо.

Всего записей: 10 | Зарегистр. 13-09-2008 | Отправлено: 22:17 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Genri
спасмбо.. помогло..
Но папку такого вида 23.1/1.2367 нельзя создать, т.к. / - нельзя использвать в имени!
как сделать замену "/" и "." на "" ?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 23:06 30-09-2008
serg_aka_lain

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

Цитата:
А лучше всего такую функцию - после окончания установки приложения , инсталятор и все файлы .bin принадлежащие инсталятору автоматически удалялись с винчестера напрочь.  

Интесесная задачка, может так Код
А вот "Setup.exe" как удалить?, может через перезагрузку., т.к. инсталлятор сам себя стереть не сможет.
 
Или вот пример с батником, должно сработать.
 

Всего записей: 340 | Зарегистр. 13-01-2007 | Отправлено: 23:43 30-09-2008 | Исправлено: serg_aka_lain, 00:51 01-10-2008
Genri

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

Цитата:
Но папку такого вида 23.1/1.2367 нельзя создать, т.к. / - нельзя использвать в имени!  
-- а это для тебя новость? Я почему-то решил что ты это знаешь и создание вложенной папки подразумевается само собой. А замену символов реализовать можно. Только хлопотное это дело. Я бы оставил так как есть. Но если есть желание, почитай в хелпе раздел препроцессора.
 
LOGANXFI

Цитата:
после окончания установки приложения , инсталятор и все файлы .bin принадлежащие инсталятору автоматически удалялись с винчестера напрочь.
-- а смысл? Ну скопирую я на винт инсталлятор, запущу его, он по окончании сам себя удалит.... А при необходимости, я его еще раз скопирую и опять запущу А если буду запускать с компакт-диска, то удаление в принципе не возможно.  Я уже не раз говорил - защиту должна обеспечивать сама программа, а не ее инсталлятор.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 01:04 01-10-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Genri
я так понимаю, что код приведенный выше мне написан почти на си!
как вообще кодируется в препроцессах? можно пример несложного алгоритма?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 01:49 01-10-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