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

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

Автор: ValidolX
Дата сообщения: 18.08.2013 11:49
Знаю что Inno только под винду, поетому звиняйте за офтоп,а вопрос такой
посоветуйте норм. инсталлер под win/lin/mac
кросплатформенный тоесть
Автор: Gnom3
Дата сообщения: 18.08.2013 14:35
oosppa
В компиляторе жмем F1 - откроется справка, далее - содержание, Секции - Секция [Setup] - ты просто поразищься, сколько там опций можно указать для сжатия.
Автор: sjwrec
Дата сообщения: 18.08.2013 17:33
oosppa

Цитата:
Выпадает ошибка при такой записи:


Точно, сразу не заметил что этот флаг для страницы компонентов. Извиняюсь за ошибочную информацию.
Автор: Gnom3
Дата сообщения: 19.08.2013 21:31
IsDxVer определение версии directX поддерживаемой видеокартой на текущей системе. (то есть на ХР, например всегда будет не выше 9)
тестим, отписываемся. при неправильном показании - скрин окна dxdiag.
Автор: trolltmn
Дата сообщения: 20.08.2013 07:10

Цитата:
Цитата:
А можно подобное (описание компонентов с картинками) реализовать на стандартной странице компонентов, не создавая чекбоксов, а проверять стандартные???

Можно.


nik1967

Пример работает на ура, но с одним лишь ограничением, если элементов в списке не более 16, если же их больше то начинается прокрутка изображений по кругу, а можно ли реализовать аналогичное решение но с большим количеством элементов?

P.S. Реализация оказалась проста до безобразия. Не только опилки в голове :

Код:
procedure CheckMouseMove(Sender: TObject; X: Integer; Y: Integer; Index: Integer; Area: TItemArea);
var
i: Integer;
begin
MouseY:= Y/15;
if MouseY < WizardForm.ComponentsList.Items.Count then
begin // выполняется, если курсор пересекает чекбокс с номером MouseY
CheckLabel.Caption:= CustomMessage('ComponentsDescription' + IntToStr(Index));
//BitmapImage.Bitmap:= Imgs[MouseY];
BitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\game'+IntToStr(Index)+'.bmp'));
// если надо при движении курсора выполнить еще что-то, дописываем сюда
end;
end;
Автор: sergey3695
Дата сообщения: 20.08.2013 11:56
Gnom3 все ок. без ошибок. просто и понятно,спасибо.
Win 8 - 11 (GTX 550 Ti все верно)
Автор: sjwrec
Дата сообщения: 21.08.2013 09:42
Gnom3

Цитата:
определение версии directX поддерживаемой видеокартой


На XP - 9
На 7 - 10

Видеокарта: NVIDIA GeForce GTS 250 (DX 10)

Собственно то что надо. Спасибо.
Автор: X11
Дата сообщения: 22.08.2013 14:43
Приветствую.
Иногда установщик моей программы выдаёт у пользователя на ПК

Цитата:
MoveFile: сбой; код 183.
Невозможно создать файл, так как он уже существует


с чем это может быть связано?
Автор: boss911
Дата сообщения: 23.08.2013 03:10
Написан 32bit инсталлятор, в нем есть такое:

Код: [UninstallDelete]
Name: {sys}\Drivers\dfx11_1x64.sys; Type: files; Check: IsWin64; MinVersion: 6.0
Автор: R3Pa4eK
Дата сообщения: 26.08.2013 19:21

Цитата:

с чем это может быть связано?

Ну наверное потому, что этот файл уже существует Например, ты хочешь переместить файл 1.file в другую папку. А там уже есть 1.file. Да не просто он там лежит, скучает, а еще дрючится какой то программкой. MoveFile не может его удалить/заменить, поэтому вываливается в экскепшн)

boss911

Код:
procedure InitializeUninstallProgressForm;
begin
if IsWin64 then //если 64-х битная система
DeleteFile(ExpandConstant('путь_к_драйверу')); //удаляем драйвер
end;
Автор: ultimo
Дата сообщения: 29.08.2013 16:31
Всем привет. Есть ли способ запуска .reg-файла по окончании установки (секция Run)?

Знаю, что есть [Registry], просто слишком много надо прописывать. Возможно ли запустить готовый reg-файл?
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 16:34
ultimo
Ты используешь ISDone?
Автор: ultimo
Дата сообщения: 29.08.2013 16:44
P.S. Сделал так: Filename: {app}\Regfile.reg; Flags: skipifdoesntexist shellexec;

Только будет запрашиваться подтверждение о добавлении сведений в реестр. Флаг /silent не работает. Как убрать подтверждение?

Добавлено:
R3Pa4eK
причем тут ISDone вообще?
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 16:51
ultimo
[_Code]
Exec2(ExpandConstant('{app}\file.reg'), '', true);
попробуй парамы /VERYSILENT или через cmd.exe:
Exec2(ExpandConstant('cmd.exe'), ExpandConstant('{app}\file.reg'), true);
or
Exec2(ExpandConstant('cmd.exe'), ExpandConstant('{app}\file.reg /silent'), true);
or
Exec2(ExpandConstant('cmd.exe'), ExpandConstant('{app}\file.reg /VERYSILENT'), true);
Автор: ultimo
Дата сообщения: 29.08.2013 17:03
R3Pa4eK
В данном скрипте без ISDone работаю...
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 17:12
ultimo
Попробуй так тогда:
[Run]
Filename: cmd.exe; Parameters: {app}\run.reg /silent; WorkingDir: {app}; Flags: skipifdoesntexist shellexec;

вместо /silent можешь /VERYSILENT поставить, если что)
Автор: ultimo
Дата сообщения: 29.08.2013 17:15
R3Pa4eK
и так тоже пробовал, не выходит. =\
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 17:16
ultimo
мм
Filename: regedit.exe; Parameters: /s {app}\run.reg; WorkingDir: {app}; Flags: skipifdoesntexist shellexec;
Автор: ultimo
Дата сообщения: 29.08.2013 17:41
R3Pa4eK
и даже так не работает. Даже вручную через Выполнить тоже самое написать - все равно не добавляет. =\
Автор: oosppa
Дата сообщения: 29.08.2013 17:51
ultimo
Попробуй автоматически экспортировать reg-файл с помощью InnoIDE http://rghost.ru/48452985
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 17:51
ultimo
Ну не может быть... мб вот так:
Filename: {sys}\regedit.exe; Parameters: /s {app}\run.reg; WorkingDir: {sys}; Flags: skipifdoesntexist;
или без WorkingDir. Если и это не работает, тогда хз) Хотя у меня робит, только что проверил)
Автор: ultimo
Дата сообщения: 29.08.2013 17:59
[21:58:13,414] -- Run entry --
[21:58:13,415] Run as: Current user
[21:58:13,415] Type: Exec
[21:58:13,416] Filename: C:\Windows\system32\regedit.exe
[21:58:13,417] Parameters: /s C:\Program Files (x86)\Blizzard Entertainment\WarCraft III\Gateways.reg
[21:58:13,445] Process exit code: 0
[21:58:13,447] Need to restart Windows? No
[21:58:16,916] Deinitializing Setup.
[21:58:17,156] *** exit code: 0

И ничего не добавляет. Я проклят, либо мне пора спать
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 18:04
ultimo
Упс

Цитата:
Filename: C:\Windows\system32\regedit.exe

А должно быть C:\Windows\regedit.exe


Filename: ..\{sys}\regedit.exe; Parameters: /s {app}\run.reg; WorkingDir: {sys}; Flags: skipifdoesntexist;
or
Filename: regedit.exe; Parameters: /s {app}\run.reg; WorkingDir: {sys}; Flags: skipifdoesntexist;
должно само искать вообще то )
Автор: sjwrec
Дата сообщения: 29.08.2013 18:09
ultimo
Нет вы не прокляты. Вот как должна выглядеть эта строка:

Код:
Filename: {win}\regedit.exe; Parameters: /s {app}\run.reg; WorkingDir: {win}; Flags: skipifdoesntexist;
Автор: ultimo
Дата сообщения: 29.08.2013 18:10
R3Pa4eK
тьфу, запутали вы меня, что я даже поверил)

Не важно, даже если прописываю
Filename: regedit.exe; Parameters: /s {app}\Gateways.reg; Flags: skipifdoesntexist;

или

Filename: {win}\regedit.exe; Parameters: /s {app}\Gateways.reg; Flags: skipifdoesntexist;

ДАнные не добавляются.

Добавлено:
[22:13:43,205] -- Run entry --
[22:13:43,205] Run as: Current user
[22:13:43,206] Type: Exec
[22:13:43,207] Filename: C:\Windows\regedit.exe
[22:13:43,207] Parameters: /s C:\Program Files (x86)\Blizzard Entertainment\WarCraft III\Gateways.reg
[22:13:43,257] Process exit code: 0


Добавлено:
Все же это проклятье и усталость...
Автор: sjwrec
Дата сообщения: 29.08.2013 18:21
ultimo
Тогда напишите код в Батник и добавьте его на запуск.
Автор: ultimo
Дата сообщения: 29.08.2013 18:23
sjwrec
угу, как вариант. Ладно, завтра займусь этим, уже больше суток не сплю...Спасибо за помощь, R3Pa4eK, sjwrec

Добавлено:
P.S. проблема в пути. Не хватает двойных кавычек.
Автор: sjwrec
Дата сообщения: 29.08.2013 18:28
ultimo
Также можете попробывать скачать REG Converter из шапки. Тоже отличная вещь.
Автор: ultimo
Дата сообщения: 29.08.2013 18:28
Эврика приходит как всегда перед сном Спасибо, ребята, за помощь)

Добавлено:
Кстати, есть в Inno возможность ставить двойные кавычки (в параметрах, путях)? А то пользуюсь {code:DoubleQuotes}, чувствую себя дикарем
Автор: R3Pa4eK
Дата сообщения: 29.08.2013 18:38
ultimo
Нууу просто "путь", не? О_о

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177

Предыдущая тема: поиск


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