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

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



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

Цитата:
Да вобщем-то не за что. Я ведь сам ничего не придумал

да это понятно, но ведь поиск всего этого тоже время отнимает

Всего записей: 601 | Зарегистр. 13-06-2003 | Отправлено: 19:31 06-01-2007
Sampron

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

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



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Sampron
Ты малость темой ошибся

Всего записей: 601 | Зарегистр. 13-06-2003 | Отправлено: 21:53 06-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А кто нибудь знает как можно сделать вывод сообщение ("Вы действительно хотите продолжить установку" ДА\НЕТ если "Да" то запускается устанока) перед установкой?

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 22:33 06-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В файл SHFileOperation.iss, можно добавить код, который можно взять здесь. Эта часть содержит еще три функции:
function CopyFiles(const fromDir, toDir, fileMask: string): Boolean;
function MoveFiles(const fromDir, toDir, fileMask: string): Boolean;
function DelFiles(const fromDir, fileMask: string; toRecycle: Boolean ): Boolean;
... которые производят операции копирования, перемещения и удаления файлов по указанной маске во всех вложенных папках. Правда, подпадание под маску немного отличается от общепринятого. Будет время, может исправлю. Вобщем, пробуйте на свой страх и риск.
 
Добавлено:
Чтобы меньше было вопросов, что там не так:
1. Символ <?> в маске означает любой символ или его отсутствие.
2. Символ <?> отслеживается только по правилу 8.3 Т.е. под маску *.??? подпадут все файлы, а не только те, у которых расширение из трех символов, а под маску *.?? подпадут файлы с расширением только из 1 и 2 символов.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 01:44 07-01-2007
Sampron

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

Цитата:
А кто нибудь знает как можно сделать вывод сообщение ("Вы действительно хотите продолжить установку" ДА\НЕТ если "Да" то запускается устанока) перед установкой?

[Setup]
DisableStartupPrompt=no

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 12:41 07-01-2007
NightW0lf



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

Цитата:
[Setup]  
DisableStartupPrompt=no

Спасибо!
 

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 13:14 07-01-2007
yurri



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте!
 
Подскажите чайнику ответ на вопрос:
можно ли из Inno провести запись и соответственно удаление
из базы данных (в частности mySQL).
Если да то что для этого нужно.
 
Заранее спасибо.

Всего записей: 82 | Зарегистр. 18-03-2006 | Отправлено: 18:25 07-01-2007
feandy



Пиво тоже компонента
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Мля ребята.
Давайте вопросы по существу.
А так получается, я чайник, как решить, результат тебе 1000 баков, а те кто решили... Х на Р...

Всего записей: 5200 | Зарегистр. 15-02-2002 | Отправлено: 20:50 07-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AtotIK
У тебя в скрипте я нашел вот это:

Код:
 
procedure HideInstallPath();  
begin  
WizardForm.StatusLabel.Caption:= 'Создание резервных копий файлов...';  
end;  
 
procedure ShowInstallPath();  
begin  
WizardForm.FileNameLabel.Visible:= True;  
WizardForm.StatusLabel.Caption:= 'Распаковка файлов русификации...';  
end;
 

Как мне сделать чтобы это работало?

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 00:30 08-01-2007
ZavadS



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите сделать инсталлятор. Задача вот такова. Нужно при русификации программы сделать резервные копии заменяемых файлов, а при удаленные русификатора, повернуть все на место. А именно, папка и в ней несколько папок с файлами. Просмотрел всю тему на данном сайте попробовал сделать скрипт. Во время компиляции, выдает ошибку в строке 28.
 
[Setup]
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=C:\SETUP
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes
 
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
 
[Tasks]
Name: arc; Description: "Создать резервную копию оригинальных файлов "
 
[Files]
Source: C:\Skin\*; DestDir: {app}\Skin; Flags: ignoreversion recursesubdirs createallsubdirs
 
[Code]
 procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssInstall then
begin
CopyDir(ExpandConstant('{app}\Skin'),ExpandConstant('{app}\Backup'));
end;
end;
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then
begin
CopyDir(ExpandConstant('{app}\Backup\'),ExpandConstant('{app}\Skin'));
end;
end;

Всего записей: 33 | Зарегистр. 04-01-2007 | Отправлено: 00:47 08-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ZavadS -- А ты строку:
#include "SHFileOperation.iss"  
... не забыл вставить? И сам файл SHFileOperation.iss у тебя есть? На будущее - желательно указывать не номер строки, а само сообщение.
 
И внимательнее со слешами. Если я правильно помню, при инсталляции указанного тобой скрипта, в результате получим  ..\Backup\Skin\..., а при деинсталляции, получим  ..\{app}\Skin\Skin\...

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 01:12 08-01-2007
Kurikka

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Изучаю Inno.
 
А можно сделать так? Желательно пример.
 
По ходу установки экран с выбором:
 
1. Вы хотите, чтобы прога имела общие настройки для всех юзеров
2. У каждого свои
 
И где эти настройки сохранять потом, чтобы можно было в них писать (настройки хранятся в файлах)? Желательно для Win от 98 до Vista.
И как сделать так, чтобы Setup в зависимости от выбора писал в реестр запись о выборе?

Всего записей: 164 | Зарегистр. 31-10-2005 | Отправлено: 10:48 08-01-2007 | Исправлено: Kurikka, 10:52 08-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет ВСЕМ!
Я вновь решел вернуться к "БЭКАПАМ"
 
Теперь я нашел там небольшую неточность в моем скрипте:
здесь
 
Неточность заключается в том что в папку "\Install_Rus\Backup" копируется все содержимое директории установки ("{app}") я так понял это из-за "MoveDir(ExpandConstant('{app}\Install_Rus\Backup\'),ExpandConstant('{app}'));", Genri привел на предыдущем посте пример кода "SHFileOperation.iss" с возможностью имеено копирования\перемещения ФАЙЛОВ (function CopyFiles(const fromDir, toDir, fileMask: string): Boolean;) тогда если не трудно то помоги те мне с ней разобраться!
 
Зарание благодарю!

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 13:03 08-01-2007 | Исправлено: NightW0lf, 13:07 08-01-2007
AtotIK



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
2 NightW0lf
 
[Files]
Source: "{app}\SomeFile_1.file"; DestDir: "{app}\Backup"; Flags: uninsneveruninstall skipifsourcedoesntexist overwritereadonly ignoreversion external; BeforeInstall: HideInstallPath;
Source: "{app}\SomeFile_2.file"; DestDir: "{app}\Backup"; Flags: uninsneveruninstall skipifsourcedoesntexist overwritereadonly ignoreversion external; AfterInstall: ShowInstallPath;
 
[Messages]
StatusExtractFiles=Создание конфигурационных файлов...
 
[Code]
procedure InitializeWizard();
begin
  WizardForm.FileNameLabel.Visible:= False;
end;
 
Добавлено:
 
Да, как там насчёт того патча к инсталлятору который делает слайд-шоу?
 
Добавлено:
 
В последних инсталляторах SerGEAnt'а пароль в файле CompiledCode.bin
разделён на кусочки, а раньше показывался весь.
 
Вопрос: Как ЭТО реализовать?

Всего записей: 138 | Зарегистр. 17-09-2006 | Отправлено: 13:14 08-01-2007 | Исправлено: AtotIK, 13:44 08-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf -- каждый инсталлятор - это эксклюзив. Соответственно и бэкап в каждом случае уникален. Кто-то пользуется копированием, кто-то перемещением, кому-то надо сохранить все, а кому-то только нескоторые файлы.  
Возможно, что в твоем случае, можно использовать следующее:
Код:
 
#include "SHFileOperation.iss"
 
[Setup]
AppName=My Program
AppVerName=My Program version 1.5
DefaultDirName={pf}\My Program
DisableProgramGroupPage=yes
 
[Files]
Source: Files\*.*; DestDir: {app}; Flags: ignoreversion recursesubdirs; BeforeInstall: CreateBackup
 
[Code]
function MoveFile(const srcFile, destFile: PChar):Integer;
external 'MoveFileA@kernel32.dll stdcall';
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep = usPostUninstall then
    begin
      MoveDir(ExpandConstant('{app}\Backup\'),ExpandConstant('{app}'));
      RemoveDir(ExpandConstant('{app}\Backup\'));
    end;
end;
 
procedure CreateBackup;
var
  srcFile, destFile: string;
  basePath, shortPath: string;
begin
  basePath:= ExpandConstant('{app}');
  srcFile:= ExpandConstant(CurrentFileName);
  shortPath:= srcFile;
  StringChangeEx(shortPath, basePath, '', True);
  destFile:= ExpandConstant('{app}\Backup') + shortPath;
  ForceDirectories(ExtractFilePath(destFile));
  MoveFile(PChar(srcFile), PChar(destFile));
end;  

Здесь при инсталляции, в бэкап сохраняются (перемещением) только те файлы, которые инсталлятор заменяет. При удалении, эти же файлы восстанавливаются (тоже перемещением).
Хотя лично мне, перемещение файлов при бэкапе не очень нравится. Да, так быстрее (особенно если файлы большие). Но если в процессе инсталляции что-то рухнет, то есть риск потерять один или несколько файлов.  

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 17:52 08-01-2007
DCFan

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет!
А мона сделать, чтобы файлы некуда не перемещались, а переименовались? Например: в MyProg.exe.bak

Всего записей: 3 | Зарегистр. 08-01-2007 | Отправлено: 18:33 08-01-2007
Genri

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

Цитата:
мона сделать, чтобы файлы некуда не перемещались, а переименовались?
 
Сохранять просто. Достаточно изменить процедуру CreateBackup :
Код:
 
procedure CreateBackup;
var
  srcFile, destFile: string;
begin
  srcFile:= ExpandConstant(CurrentFileName);
  destFile:= srcFile + '.bak';
  MoveFile(PChar(srcFile), PChar(destFile));
end;  

А вот для восстановления при деинсталляции, придется прописывать отдельную процедуру.
Как я и говорил: каждый инсталлятор - это эксклюзив (у каждого свои требования). Правда зачастую, требования превышают возможности, ограниченные знаниями, по причине лени

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 18:45 08-01-2007
DCFan

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

Цитата:
А вот для восстановления при деинсталляции, придется прописывать отдельную процедуру.  

Чё за процедура и как её писать?

Цитата:
Как я и говорил: каждый инсталлятор - это эксклюзив (у каждого свои требования). Правда зачастую, требования превышают возможности, ограниченные знаниями, по причине лени  



Всего записей: 3 | Зарегистр. 08-01-2007 | Отправлено: 19:04 08-01-2007 | Исправлено: DCFan, 19:05 08-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DCFan
Здесь полный скрипт, в котором бэкап выполняется переименованием файлов (только тех, которые меняются) в *.bak, а при деинсталляции, файлы восстанавливаются обратным переименованием. Никаких проверок на корректность операций нет. Добавляй сам.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 19:51 08-01-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