Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: dragon1000
Дата сообщения: 30.11.2014 21:16
-delete-
Автор: tryroom
Дата сообщения: 30.11.2014 22:04
nortem

Используйте расширенную версия Inno Setup от Restools, и не будет этой ошибки.
Скрипт проверил, рабочий.

Автор: Mazozazo
Дата сообщения: 01.12.2014 00:33
Всем привет! помогите с одной праблой, после проверки инстолятора заметил, что в верхнем углу при нажатии кнопки "о программе" выдается инфа о иссо, ссылки всякие и авторы, вот вопрос, как можно убрать ту инфу и поставить свою? или же вообще убрать все?

Добавлено:
innonewbie, попробывал, у меня расширенная версию но не прет куча ошибок только))) может что-то есть по проще?

Добавлено:
innonewbie кстати ругается на процедуру procedure InitializeWizard; уже используется у меня... как быть?
Автор: painter7
Дата сообщения: 01.12.2014 02:00

Цитата:
кстати ругается на процедуру procedure InitializeWizard; уже используется у меня... как быть?

Объявление процедуры должно быть одно, код из второй переместить в первую и затереть старую.
Автор: Mazozazo
Дата сообщения: 02.12.2014 01:11
painter7пробовал, все равно орет ))
Автор: nortem
Дата сообщения: 02.12.2014 12:53
ХЕлп Расширенная версия от китайских собратьев. Домашняя страница ResTools
Inno Setup Compiler 5.5.0-5.1 build 120808
скачал, ошибка не пропала, кодировка ansi
Автор: tryroom
Дата сообщения: 02.12.2014 13:50
nortem
У меня стоит Inno Setup Compiler version 5.5.1. ee2(a) (build 121216)
Вот твой собранный файл
http://rghost.ru/59381465
Автор: nortem
Дата сообщения: 02.12.2014 14:53
решилось установкой ддл
Автор: tyumenik
Дата сообщения: 02.12.2014 18:50
Добрый вечер, всем! Дайте, код на последней странице... Заранее спасибо!!!
Автор: Kindly
Дата сообщения: 02.12.2014 23:23
PatchWise.Project.1.0.for.Inno.Setup.by.Kindly
http://rghost.ru/59392618
https://www.sendspace.com/file/fj6yoq
http://www.datafilehost.com/d/ee03a843

создание патчей с помощью средств Inno и встроенного движка от почившего патчера PatchWise Free.
Автор: missial
Дата сообщения: 03.12.2014 10:57
Подскажите пожалуйста!
Как мне передать значение mRes в условие if CurUninstallStep = usDone then

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var mRes : integer;
begin
if CurUninstallStep = usUninstall then
begin
mRes := MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2)
if mRes = IDYES then
else
DelTree(ExpandConstant('{app}\*.sitecfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.cfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
Log(IntToStr(mRes));
end
if CurUninstallStep = usDone then
begin
Log(IntToStr(mRes)); //тут значение 0, чтобы я не выбирал
MsgBox('Hello.', mbInformation, MB_OK);

end

end;
Автор: Kindly
Дата сообщения: 03.12.2014 11:14
missial
например

Код: MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2)
if IDYES then
begin
inc(mRes);
end else
begin
.......

if CurUninstallStep = usDone then
begin
// если юзер нажал Yes, то в mRes будет единица, если No, будет 0.
Log(IntToStr(mRes)); //тут значение 0, чтобы я не выбирал
MsgBox('Hello.', mbInformation, MB_OK);

end
Автор: missial
Дата сообщения: 03.12.2014 11:43
Kindly

Так как вы описали сделать не получается. Ругается на неизвестную IDYES

Цитата:

MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2)
if IDYES then
begin
inc(mRes);
end else
begin
.......

if CurUninstallStep = usDone then
begin
// если юзер нажал Yes, то в mRes будет единица, если No, будет 0.
Log(IntToStr(mRes)); //тут значение 0, чтобы я не выбирал
MsgBox('Hello.', mbInformation, MB_OK);

end
Автор: Kindly
Дата сообщения: 03.12.2014 12:11
missial
я надеялся, что вы уловили суть, а код могли бы и поправить
if MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
inc(mRes);
end else
begin
Автор: missial
Дата сообщения: 03.12.2014 12:26
Спасибо за советы, но и это не помогает. Компилятор ругается на inc(mRes); Видимо он тут урезан и просто не знает такую процедуру(

Цитата:

я надеялся, что вы уловили суть, а код могли бы и поправить
if MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
inc(mRes);
end else
begin
Автор: Kindly
Дата сообщения: 03.12.2014 12:42
missial, китайский чтоли (компилятор)?
тогда вместо inc(mRes);
mRes := 1;
Автор: missial
Дата сообщения: 03.12.2014 12:57
[more] И так не катит. Я наверно туп. Что я делаю не так???

Цитата:

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var mRes : integer;
begin
if CurUninstallStep = usUninstall then
begin
if MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
mRes := 1;
end
else
begin
DelTree(ExpandConstant('{app}\*.sitecfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.cfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
Log(IntToStr(mRes));
end
end
if CurUninstallStep = usDone then
begin
Log(IntToStr(mRes));
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
end
end;
[/more]
Автор: DICI BF
Дата сообщения: 03.12.2014 13:11

Цитата:
Подробнее...

[more=А так?]
Код: procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var mRes : integer;
begin
if CurUninstallStep = usUninstall then
begin
if MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
mRes := 1;
end
else
begin
DelTree(ExpandConstant('{app}\*.sitecfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.cfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
Log(IntToStr(mRes));
end
end;
if CurUninstallStep = usDone then
begin
Log(IntToStr(mRes));
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
end
end;
Автор: gvshil
Дата сообщения: 03.12.2014 13:14
Подскажите, пожалуйста, как реализовать следующее:
Как при удалении программы удалить используемую системой DLL без перезагрузки системы?
Автор: missial
Дата сообщения: 03.12.2014 13:28
[more] [more=А так?]
Код: procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var mRes : integer;
begin
if CurUninstallStep = usUninstall then
begin
if MsgBox('Вы хотите сохранить настройки?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
mRes := 1;
end
else
begin
DelTree(ExpandConstant('{app}\*.sitecfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.cfg'), False, True, False);
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
Log(IntToStr(mRes));
end
end;
if CurUninstallStep = usDone then
begin
Log(IntToStr(mRes));
DelTree(ExpandConstant('{app}\*.log'), False, True, False);
end
end;
Автор: Kindly
Дата сообщения: 03.12.2014 14:30
missial, как вариант только так, наверное, потому что шаги деинсталляции выполняются в цикле и сбрасывают предыдущие переменные.


Код: procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var
s : string;
begin
if CurUninstallStep = usUninstall then
begin
case MsgBox('Вы хотите сохранить настройки?', mbconfirmation, mb_yesno) of
IDYES:
begin
s := IntToStr(1);
MsgBox('Настройки сохранены, значение ' + s, mbConfirmation, MB_OK);
end;
IDNO:
begin
s := IntToStr(0);
MsgBox('Настройки НЕ сохранены, значение ' + s, mbConfirmation, MB_OK);
end;
end;
MsgBox('Записали в лог ' + s, mbConfirmation, MB_OK);
end;
end;
Автор: AkroMen
Дата сообщения: 04.12.2014 07:34
Всем привет, есть вопрос как реализовать.
У меня есть группа А и Б в обеих группах по 4 компонента, а в каждом из этих компонентов по 3 файла.Один из этих файлов назовём его "effects" точно такой же как и в остальных группах только с другой структурой кода.Можно как-то добавить именно к файлам "effects" версию, то есть из группы А файлы "effects" будут иметь версию файла 4.0, а из группы Б файлы "effets" будут иметь версию файла 3.0.Тем самым при установке и выборе всех компонентов установщик не станет устанавливать файл версии 3.0 так как уже существует версия файла 4.0.
Автор: Kindly
Дата сообщения: 04.12.2014 10:09
AkroMen
ты хочешь чтоб за тетя код написали, но для собственного понимания, напиши свой код, логика у тебя уже есть, ты спрашивай, что у тебя не получается в реализации конкретного места, тогда будет больше вероятности, что тебе помогут, а так, лениво писать код с нуля.
Автор: painter7
Дата сообщения: 04.12.2014 12:53
Kindly, или уже пусть код\скрипт показывает, а то еще и в гадания можно поиграть

Цитата:
PatchWise.Project.1.0.for.Inno.Setup.by.Kindly

Сяп, забрал, авось пригодится, хотя сам просто юзаю для патчей snr engine.

Mazozazo, ну тогда скрипт кидай.
Автор: Kindly
Дата сообщения: 04.12.2014 13:09

Цитата:
хотя сам просто юзаю для патчей snr engine
ну а кто репаки делает для игр, а потом пакует обновления, то вполне может быть актуально, PatchWise генерирует только изменения и вносит их, и в зависимости от рода изменений, такой патч может весить от полмегабайта до нескольких десятков ну может сотен мегабайт, вместо нескольких гигабайт. конечно, если игровые архивы это заново упакованные файлы, то патчер определит слишком много изменений, а вот у которых игровые архивы не сжаты, то вполне пригодно. у SnR другая специфика, патчить опрделенные сигнатуры по маске, кстати, в скором времени выложу исходники своего snr патчера.
Автор: painter7
Дата сообщения: 04.12.2014 13:41

Цитата:
у SnR другая специфика

Да, я в курсе, имел в виду, что не прибегаю к такого рода патчам, если патчу, то обычно пару байт по маске, но другим думаю будет полезно описание в посте.

Помню в свое время был такой патч-мейкер, вот, вроде он, но могу ошибиться:
http://www.indigorose.com/products/visual-patch/
Автор: Kindly
Дата сообщения: 04.12.2014 14:54
еще один проектик
Search.And.Replace.Inno.Setup.Patcher.1.0.by.Kindly
http://rghost.ru/59417943
https://www.sendspace.com/file/i8uyls
http://www.datafilehost.com/d/b682e774

painter7
да их много всяких разных, я раньше использовал для кое-каких целей его облегченную версию Express.
Автор: Kindly
Дата сообщения: 05.12.2014 17:28
PatchWise.Project.1.1.for.Inno.Setup.by.Kindly

http://rghost.ru/59438502
https://www.sendspace.com/file/anlym2
http://www.datafilehost.com/d/7a376b89

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

также для понимания в комплекте имеется флеш мувик.
скорее всего, это финальная версия, т.к. глобально изменять вроде нечего, а по мелочи каждый может изменить скрипт под себя.
Автор: Igimon
Дата сообщения: 11.12.2014 08:34
Подскажите пожалуйста, есть ли возможность заставить работать следующее функцию по маске?

if FileExists(ExpandConstant('{app}\*.wav')) then

подобным образом она у меня не работает, может есть другой вариант?


И еще, часть файлов имеют Flags: external - как сделать так, чтобы в случаи если файлы не найдены по заданному пути выводился бы диалог запроса диска?
Автор: icetanker
Дата сообщения: 12.12.2014 07:55
подскажите,пожалуйста,есть ли возможность через inno setup сделать так,чтобы файл ActiveX качался с сервера,а не лежал в установочном файле,а потом его регистрировал, как зарегистрировать ActiveX я понял,а как указать сервер не могу разобраться,постоянно кидать файл в установщик не очень удобно

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758

Предыдущая тема: Только инсталлятор


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.