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

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

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

Widok (23-04-2007 18:02): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 105 106 107 108

   

haav



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

 
 
Это мощное средство для создания установочных пакетов [дистрибутивов] программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки. Можно легко самим создавать диалоги, используя спец. дизайнер. И всё это абсолютно бесплатно! По сравнению с NullSoft [основной конкурент на бесплатной ниве] мне albel понравилась более интуитивно-понятная структура скрипта, простота в настройке.  
 
Последний релиз: 5.1.11 [1 Марта 2007 года]
История версий | скачать  
 
Русификатор от NightW0lf для версии 5.1.11  
Скачать | зеркало
 
Русская справка к версиям 5.0.xx
Скачать | зеркало || cкачать в .chm формате
И снова BagIra на высоте
 
Руководство по расширенным возможностям Inno Setup 5 [не для чайников] от Kindly
[3 версия]  
Скачать | зеркало
[4 версия]  
Скачать | зеркало
[5 версия]  
Скачать | зеркало
 
Inno Setup Extensions Knowledge Base  
Скачать | зеркало
 
Примечание: начиная с версии 5.1.10 в Inno Setup при использовании в инсталляторе фонового изображения формата BMP стало глючить возможность растягивания картинки на весь экран - чтобы это исправить добавьте этот код.
Если вы захотите использовать метод проверки внешнего файла через сумму MD5 [который описан в 5 версии руководства по программированию в Inno Setup] для запуска инсталлятора то вам понадобится калькулятор суммы MD5, калькулятор сумм MD5, SHA-256, CRC32. Если вы хотите узнать какие ключи в реестр вносит та или иная программа [или игра] то Вам понадобится RegShot.



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



ISTool
 
www.istool.org
 
Последний релиз: 5.1.8 [18 Октября 2006 года] New
Скачать | зеркало  
[как сказано в описании изменений, добавлена поддержка новых директив 5.1.8]
 
Русификатор
Скачать | зеркало


 
Распаковщик установок, сделанных с помощью Inno Setup. При распаковке извлекаются  ресурсы и скрипт установки [немного усечённый]. Возможно подключение к TotalCommander или FAR с помощью MultiArc плагинов.
 
Поддерживает распаковку инсталляторов, сделанных с помощью Inno Setup начиная с версии 3.0.0-beta по 5.1.10
 
Последний релиз: 0.19
Скачать | зеркало


 
Удобная оболочка для облегчения написания скриптов установки для INNO SETUP. Обладает некоторыми полезными функциями, которых нет ни у самого INNO, ни у ISTool.
 
Последний релиз: 5.1.6.9 [09 Июль 2006 года]
Скачать 4.2 мб | обновление 3.1 мб
 
Русификатор от GloThin
Скачать с сайта GloThin | Зеркало | Зеркало | зеркало
Пароль: ruboard
Примечание: офф. сайт косо отображается в Oper`е.
 
Новое название проекта на сайте, похоже произошла замена ScriptMaker на:
 
Inno Script Generator

Последний релиз: 1.02.5 [02 Апреля 2007 года]
Скачать | обновление
Примечание: обновление ставится только на Inno Setup Quickstartpack 5.1.11.

Всего записей: 67 | Зарегистр. 11-12-2001 | Отправлено: 15:23 09-10-2002 | Исправлено: NightW0lf, 15:16 15-04-2007
Kindly



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

Цитата:
Работает, НО не совсем так как надо. А именно получается - "$app_data_root$=true|false|C:\Documents and Settings\All Users\Документы\STALKER-SHOC" за место "$app_data_root$=true|false|C:\|Documents and Settings\All Users\Документы\STALKER-SHOC\" + еще при создание этой строки происходит полное стирание всех дргиух, а именно

В игровой инсталлятор включаем пустой файл 'fsgame.ltx' и юзаем такой код:
 

Код:
procedure CurStepChanged(CurStep: TSetupStep);
var
  S: String;
begin
 If CurStep=ssPostInstall then
begin
  S := ExpandConstant('{commondocs}\STALKER-SHOC\')
//меняем на то, что нужно, благо, эти символы встречаются в файле только один раз
  StringChangeEx(S, ':\', ':\|', True);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$app_data_root$=true|false|' +  S + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_data$           = false|    true|    $fs_root$|        gamedata\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_ai$            = true|        false|    $game_data$|        ai\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_spawn$        = true|        false|    $game_data$|        spawns\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_anims$           = true|        true|    $game_data$|        anims\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_levels$       = true|        false|    $game_data$|        levels\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_meshes$        = true|        true|    $game_data$|        meshes\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_dm$            = true|        true|    $game_data$|        meshes\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_shaders$        = true|        true|    $game_data$|        shaders\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_sounds$        = true|        true|    $game_data$|        sounds\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_textures$        = true|        true|    $game_data$|        textures\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_scripts$        = true|        false|    $game_data$|        scripts\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_config$        = true|        false|    $game_data$|        config\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$level$              = false|    false|    $game_levels$' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$game_saves$        = true|        false|    $app_data_root$|    savedgames\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$logs$              = true|        false|    $app_data_root$|    logs\' + #13, true);
  SaveStringToFile(ExpandConstant('{app}')+'\fsgame.ltx', '$screenshots$        = true|        false|    $app_data_root$|    screenshots\' + #13, true);
end;
end;

 
На выходе получаем 100% сходство с оригинальным файлом.
 
p.s. пришлось так извращаться, поскольку игра чувствительна к последовательности строк, просто дописать требуемую строку внизу чревато глюками.

Всего записей: 3000 | Зарегистр. 04-08-2005 | Отправлено: 11:29 12-04-2007
Sero



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sampron
Если использовать флаг Exclusive то все нормально,а если нет - чекбоксы не видны.
P.S. Компоненты нужны не для выбора языка.

Всего записей: 309 | Зарегистр. 29-10-2006 | Отправлено: 13:44 12-04-2007
NightW0lf



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

Цитата:
Если использовать флаг Exclusive то все нормально,а если нет - чекбоксы не видны.  
P.S. Компоненты нужны не для выбора языка.

Тогда попробуй сделать выбор языков на странице с дополнительными задачами [Tasks], там почти также как и в [Components].

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 14:15 12-04-2007
Sampron

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

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

Все чекбоксы видны
 
[Setup]
AppName=My Program
AppVerName=My Program version 1.5
DefaultDirName={pf}\My Program
LicenseFile=C:\License.rtf
InfoBeforeFile=C:\License.rtf
 
[Types]
Name: full; Description: Full installation
Name: compact; Description: Compact installation
Name: custom; Description: Custom installation; Flags: iscustom
 
[Components]
Name: Component1; Description: Component1; Types: full
Name: Component2; Description: Component2; Types: compact
Name: Component3; Description: Component3; Types: full compact
 
[Files]
Source: C:\Image.bmp; DestDir: {tmp}; Flags: dontcopy
Source: C:\License.rtf; DestDir: {app}; Components: Component1
Source: C:\License.rtf; DestDir: {app}; Components: Component2
Source: C:\License.rtf; DestDir: {app}; Components: Component3
 
[Code]
function GetSystemMetrics(nIndex:Integer):Integer;
external 'GetSystemMetrics@user32.dll stdcall';
 
procedure InitializeWizard();
var
  BackImage: TBitmapImage;
  Width,Height: Integer;
  s: string;
begin
  WizardForm.Position:=poScreenCenter
  Width:=GetSystemMetrics(0)
  Height:=GetSystemMetrics(1)
  MainForm.BORDERSTYLE:=bsNone
  MainForm.Visible:=True
  MainForm.Left:=0
  MainForm.Top:=0
  MainForm.Width:=Width
  MainForm.Height:=Height
  ExtractTemporaryFile('Image.bmp')
  s:=ExpandConstant('{tmp}')+'\Image.bmp'
  BackImage:=TBitmapImage.Create(MainForm)
  BackImage.Bitmap.LoadFromFile(s)
  BackImage.Align:=alClient
  BackImage.Parent:=MainForm
  BackImage.Stretch:=True
end;

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 14:29 12-04-2007
Sero



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf
Sampron
Все,разобрался!

Всего записей: 309 | Зарегистр. 29-10-2006 | Отправлено: 15:24 12-04-2007
Snake_60



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Chuvakstepan
Спасибо, торнул носом в нужное направление
 
to ALL
Но есть еще проблемка...

Код:
Source: "app_rus_data\Language.ini"; DestDir: "{app}\Language"; BeforeInstall: CreateBackup; Flags: uninsneveruninstall skipifsourcedoesntexist overwritereadonly ignoreversion
Source: "app_rus_data\ShortCut.ini"; DestDir: "{app}\Language"; BeforeInstall: CreateBackup; Flags: uninsneveruninstall skipifsourcedoesntexist overwritereadonly ignoreversion
 

в папке Backup имею Backup\Language и соответственно файлы Language.ini и ShortCut.ini но при удалении русификатора, то бишь, при Uninstall-e он мне эти файлы копирует в ...\PowerDVD\Language\Language откуда вылазит вторая папка Language хоть убей, не понимаю, помогите кто может...
Код здесь

Всего записей: 797 | Зарегистр. 20-01-2003 | Отправлено: 15:56 12-04-2007
gvshil

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как поменять иконку программе в Панель управления - >Установка и удаление программ?
Спасибо.

Всего записей: 217 | Зарегистр. 30-04-2003 | Отправлено: 19:09 12-04-2007
Sampron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gvshil
В папку с программой положи icon.ico
 
[Setup]
UninstallDisplayIcon={app}\icon.ico

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 19:31 12-04-2007
gvshil

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sampron
Не, не помогло...
Иконка деинстолятора отображлась и отображается после внесения
Цитата:
В папку с программой положи icon.ico
нормально. Я спрашивал про иконку в Установка и удаление программ
 

Всего записей: 217 | Зарегистр. 30-04-2003 | Отправлено: 21:35 12-04-2007
Sampron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gvshil
Тебе нужно чтобы в Установка и удаление программ отображалась твоя иконка твоей программы?
Если да то в папку с программой которую будешь компилировать положи icon.ico или включи иконку в скрипт:
 
[Setup]  
UninstallDisplayIcon={app}\icon.ico  
 
[Files]
Source: C:\icon.ico; DestDir: {app}

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 22:21 12-04-2007
gvshil

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

Всего записей: 217 | Зарегистр. 30-04-2003 | Отправлено: 23:17 12-04-2007
Snake_60



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

Цитата:
to ALL  
Но есть еще проблемка...

Вопрос снимается... сам разобрался...
прописал путь по другому (через другую константу не {app} а {pf} ) и всё заработало нормально...

Всего записей: 797 | Зарегистр. 20-01-2003 | Отправлено: 00:58 13-04-2007
Ded_PiXto



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

Всего записей: 45 | Зарегистр. 23-01-2007 | Отправлено: 13:24 13-04-2007
Auren

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте. Имеется следующая задача. Нужно создать "инсталлятор-загрузчик" малого размера, который будет загружать список файлов с сервера, формировать из этого файла список компонентов в инсталлятор "на лету" и загружать выбранные пользователем из этого сформированного списка компоненты. Подскажите, пожалуйста, идеи для реализации этого "проекта". Пробовал себя на NSIS, но не смог, слишком уже все там нерационально...

Всего записей: 614 | Зарегистр. 17-10-2006 | Отправлено: 13:25 13-04-2007 | Исправлено: Auren, 13:28 13-04-2007
Sero



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ded_PiXto
Можно только запустить инсталл сайлент:
Например:
Setup.exe /silent /supressmsgboxes
 
Читай в хэлпе (WizardSilent)

Всего записей: 309 | Зарегистр. 29-10-2006 | Отправлено: 14:08 13-04-2007
Nagual



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ded_PiXto
воспользуйся SIM
там это делается очень просто и поддерживается в инсталлере, так что тебе не придется страдать гамороем паскальным, да и размер на выходе получишь в 4-5 раз меньше, если не найдешь в сети ключ, кидай в личку кирпичом

Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 15:12 13-04-2007
Sampron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Никто не подскажет как можно выключить программу перед установкой по указанному времени к примеру через три секунды после запуска инсталлятора? Вот код:
 
[Files]
Source: Play.exe; DestDir: {tmp}; Flags: dontcopy
 
[Code]
procedure InitializeWizard();
var
 Res: Integer;
begin
 ExtractTemporaryFile('Play.exe')
 Exec(ExpandConstant('{tmp}\Play.exe'),'','',SW_SHOWNORMAL,ewWaitUntilTerminated,Res)
end;

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 20:40 13-04-2007
Sero



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

Код:
 
[Files]
Source: Play.exe; DestDir: {tmp}; Flags: dontcopy
Source: ISTask.dll; Destdir: {tmp}; Flags: dontcopy
 
[Code]
function RunTask(FileName: string; bFullpath: Boolean): Boolean;
external 'RunTask@files:ISTask.dll stdcall delayload';
 
function KillTask(ExeFileName: string): Integer;
external 'KillTask@files:ISTask.dll stdcall delayload';
 
procedure initializeWizard();
var Res:Integer;
begin
ExtractTemporaryFile('Play.exe');
Exec(ExpandConstant('{tmp}\Play.exe'), '', '', SW_SHOW,ewNoWait, Res)
if RunTask('Play.exe',false) then
begin
Sleep(3000);//1000- 1 sec. 2000- 2 sec. ....
KillTask('Play.exe');
end;
end;


Всего записей: 309 | Зарегистр. 29-10-2006 | Отправлено: 21:54 13-04-2007
Sampron

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

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 22:21 13-04-2007
Sero



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sampron
А что за инсталл хочешь сделать?
P.S. у меня все работает!
 
Добавлено:
А что не работет?

Всего записей: 309 | Зарегистр. 29-10-2006 | Отправлено: 22:33 13-04-2007
   

Страницы: 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 105 106 107 108

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


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru