Пятница
27.02.2026, 06:55
Krinkels Inc
Приветствую Вас Гость|
ГлавнаяФорумРегистрация Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Gnom  
Скрипты Inno Setup
ShegoratДата: Пятница, 11.03.2011, 08:21 | Сообщение # 1
Местный гуру
Администратор
Сообщений: 150
Статус: Offline

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

Последние версии:
Inno Setup QuickStart Pack (ansi) 5.4.2 [17.03.2011]
Скачать (1.7 Mb)
Inno Setup QuickStart Pack (unicode) 5.4.2 [17.03.2011]
Скачать (2 Mb)
Русификатор для Inno Setup версии 5.4.x от vadimsva
Скачать

Расширения от ResTools
Inno Setup Compiler 5.4.1 - 5.4.2 build 110319
Скачать (2.71 Mb) | Зеркало (1.54 Mb) - убраны картинки для уменьшения размера архива
Inno ISCmplr Setup 5.4.2 build 110329
Скачать (1.6 Mb) | Зеркало
Добавляет списку компонентов возможность сворачивать дочерние элементы. Содержит более удобный редактор, кроме того, компилятор имеет множество других возможностей и новых функций. На сайте автора также есть дополнительные библиотеки.
Русификатор для Inno Setup Enhanced (Restools) версии 5.4.x (ansi и unicode) от vadimsva
Скачать

Сборки Inno Setup:
InnoUltra 5.4.2 [28.04.2011] от Gnom
Сборка инструментов для работы со скриптами InnoSetup. Содержит в себе все обновленные инструменты для работы, сборка постоянно обновляется.
Полная версия | Облегченная версия | Update


Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
 
Black_angelДата: Вторник, 19.04.2011, 03:33 | Сообщение # 241
Пользователь
Сообщений: 17
Статус: Offline
Quote (Krinkels)
Запись в ini через секцию код

Этот вариант мне известен
Я наверное не правильно объяснил, твой предложенный вариант, добавляет в определенную секцию после всех строчек а мне нужно чтобы он добавил в определенную секцию между строчек например между 4-той и 5-той строчкой
в том посте где задавал вопрос, как показано

и тоже самое мне нужно сделать, только файл.ini у же находится в ZIP-е


Многие вещи кажутся изысканными пока они происходят не с вами
 
Winst@nДата: Вторник, 19.04.2011, 03:55 | Сообщение # 242
Проверенный
Сообщений: 67
Статус: Offline
YURSHAT,
Спасибо smile Ну всего знать невозможно. Бывает иной раз элементарные вещи забываешь smile
 
ShegoratДата: Вторник, 19.04.2011, 07:54 | Сообщение # 243
Местный гуру
Администратор
Сообщений: 150
Статус: Offline
DaRKdemoN
Представляем текст из лейбла как string, затем проверяем третий символ, если условие проходит, то меняем его.
Code
        
procedure InitializeWizard();        
var s: string;
begin       
s:= MyLabel.Caption;        
if s[3]='F' then  //Чувствителен к регистру, так что точно указывай что тебе нужно          
         s[3]:='X';       
MyLabel.Caption:=s;
end;        



Quote (Black_angel)
Я наверное не правильно объяснил, твой предложенный вариант, добавляет в определенную секцию после всех строчек а мне нужно чтобы он добавил в определенную секцию между строчек например между 4-той и 5-той строчкой

Почему именно между 4-й и 5-й строчками?
Я конечно могу написать функцию записи в Ini, в указанную секцию, в указанной строке, но все же, зачем именно так?
Quote (Black_angel)
и тоже самое мне нужно сделать, только файл.ini у же находится в ZIP-е

Придется перепаковывать zip, т.к при изменении файла в архиве, архив повредится. Архив большой?


Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
 
Black_angelДата: Вторник, 19.04.2011, 11:57 | Сообщение # 244
Пользователь
Сообщений: 17
Статус: Offline
Quote (Shegorat)
Я конечно могу написать функцию записи в Ini, в указанную секцию, в указанной строке, но все же, зачем именно так?
Я хочу реализовать авто установку меню для опера которое выкладывал здесь и хочу чтоб при установке оно устанавливалась не по умолчанию в конце всех меню а имена там где я захочу но для этого мне нужно чтоб моя строка вписывалась между определённых строк
Quote (Shegorat)
Придется перепаковывать zip, т.к при изменении файла в архиве, архив повредится. Архив большой?
не больше 3-хМБ


Многие вещи кажутся изысканными пока они происходят не с вами
 
ShegoratДата: Вторник, 19.04.2011, 12:43 | Сообщение # 245
Местный гуру
Администратор
Сообщений: 150
Статус: Offline
Black_angel
Ну вот в общем функция добавления в INI на нужную строку после начала секции

Правда она еще немного не закончена - нет проверки на наличие секции и самого ключа. Попозже закончу.
Все, вроде все сделал...


Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
 
DaRKdemoNДата: Вторник, 19.04.2011, 14:11 | Сообщение # 246
Пользователь
Сообщений: 26
Статус: Offline
Quote (Shegorat)
Представляем текст из лейбла как string, затем проверяем третий символ, если условие проходит, то меняем его.

Да, да то что надо. А как можно определить сколько символов в string?

Уже сам нашёл, но всё таки спасибо за помощь.

Сообщение отредактировал DaRKdemoN - Вторник, 19.04.2011, 14:44
 
ShegoratДата: Вторник, 19.04.2011, 14:34 | Сообщение # 247
Местный гуру
Администратор
Сообщений: 150
Статус: Offline
Quote (DaRKdemoN)
Да, да то что надо. А как можно определить сколько символов в string?

Функция
function Length(S: String): Longint;


Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
 
Winst@nДата: Вторник, 19.04.2011, 16:01 | Сообщение # 248
Проверенный
Сообщений: 67
Статус: Offline

Перенес данный пример на лейбл,показывает только один диск и все.
Может я что то не то накрутил.
Если делать еще на один лейбл,то определяет свободное место на диске которое не используется вообще (8Мб)
 
GnomДата: Вторник, 19.04.2011, 16:06 | Сообщение # 249
Злой модер
Модератор
Сообщений: 186
Статус: Offline
WinstAn, Псмотри пример определения дисков от Виктора Доброва, может натолкнет на мысль smile
 
YURSHATДата: Вторник, 19.04.2011, 19:46 | Сообщение # 250
Проверенный
Сообщений: 7
Статус: Offline
WinstAn,
Quote
Может я что то не то накрутил.

возможно wink



Если я знаю, что знаю мало, я добьюсь того, чтобы знать больше... В.И. Ленин

Сообщение отредактировал YURSHAT - Вторник, 19.04.2011, 19:47
 
StenДата: Вторник, 19.04.2011, 22:04 | Сообщение # 251
Пользователь
Сообщений: 3
Статус: Offline
Всем здравствуйте smile
Возник такой вопрос, как сделать пропуск страниц по клику на созданной кнопке (на ботве)? Т.е. что писать в процедуру клика или в скип пейдж (а там может как и по другому можно сделать), чтоб по нажатию кнопки, пропускалась та или иная страница smile
Заранее спасибо!
Или.... осуществлялся переход, на ту или иную страницу?
Просто, хочу типо такого сделать:
http://img840.imageshack.us/img840/7936/24563032.png
Как в инсталл визард.... Нажимаешь одну кнопку, обычная установка, с выбор путей, по и т.д.
Нажимаешь другую кнопку, установка по умолчанию smile


Сообщение отредактировал Sten - Вторник, 19.04.2011, 22:14
 
nik1967Дата: Среда, 20.04.2011, 09:39 | Сообщение # 252
Проверенный
Сообщений: 21
Статус: Offline


Сообщение отредактировал nik1967 - Среда, 20.04.2011, 09:40
 
Winst@nДата: Среда, 20.04.2011, 14:29 | Сообщение # 253
Проверенный
Сообщений: 67
Статус: Offline
YURSHAT,
Спс. Я не так сделал,повесил сразу на лейбл,хотя мессагу оставил :))
 
GnomДата: Среда, 20.04.2011, 14:55 | Сообщение # 254
Злой модер
Модератор
Сообщений: 186
Статус: Offline
Попал в засаду - у секции Languages нет возможности проверки(Check). оставить родной переключатель языка, который перед установкой - не получится, - при отмене установки из этого окошка, вылезает ошибка, поскольку он пытается завершить процессы, которые не были еще начаты.
Вопрос - можно-ли языки установки переключать из кода?
Либо, может быть есть возможность, при закрытии инсталла до срабатывания инитиализесетап обойти секцию ДеинитиализеСетап?

Все, справился smile В общем, если нужно завершить инсталл до начала InitializeSetup чтобы не выбивало ошибку :

 
ShegoratДата: Среда, 20.04.2011, 16:56 | Сообщение # 255
Местный гуру
Администратор
Сообщений: 150
Статус: Offline
Quote (Gnom)
Попал в засаду - у секции Languages нет возможности проверки(Check). оставить родной переключатель языка, который перед установкой - не получится, - при отмене установки из этого окошка, вылезает ошибка, поскольку он пытается завершить процессы, которые не были еще начаты. Вопрос - можно-ли языки установки переключать из кода? Либо, может быть есть возможность, при закрытии инсталла до срабатывания инитиализесетап обойти секцию ДеинитиализеСетап?

Ну можно же сделать условие и тогда можно будет оставить выбор языка перед установкой
Code

var
IsInitialized: Boolean;

function InitializeSetup(): boolean;
begin
*********

IsInitialized:= False;
Result:= True;
end;

procedure InitializeWizard();
begin
**********

IsInitialized:= True;

*********
end;

procedure DeinitializeSetup();
if IsInitialized then begin
    gdiShutdown;

   *********
end;


Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
 
Поиск:


Copyright Krinkels Inc © 2009 - 2026 Яндекс цитирования Яндекс.Метрика

Бесплатный конструктор сайтовuCoz