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

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

Автор: dron0000
Дата сообщения: 14.04.2008 18:31
Как передать параметр например {computername} в текстовый файл средствами инсталятора?
Автор: elapse
Дата сообщения: 14.04.2008 18:41
dron0000, в хелпе сложно посмотреть?
Прототип:
function SaveStringToFile(const FileName, S: String; const Append: Boolean): Boolean;
Пример:
SaveStringToFile('С:\Temp\filename.txt', #13#10 + ExpandConstant('{computername}') + #13#10, True);
Автор: K4M4CHO
Дата сообщения: 14.04.2008 21:22
Юзаем Actual Installer
Скачать
Автор: Kardinalli
Дата сообщения: 14.04.2008 22:10

Цитата:
Юзаем Actual Installer

Эта программа, по крайней мере эта версия, уже пару лет в Инете.
Автор: Single Feniks
Дата сообщения: 14.04.2008 23:42
Никто не будет против если я вдруг переведу справку - Inno Setup Extensions Knowledge Base и потом ее выложу?!
А-то мало ли. Может еще и дополнить можно будет если чего там нет...
Автор: GRom V
Дата сообщения: 15.04.2008 04:50
elapse
Может ты подскажешь - как убрать (именно убрать) стандартное окно в конце деинсталляции - Ваша программа полностью удалена......
Автор: Forslay
Дата сообщения: 15.04.2008 05:54
Single Feniks, Все будут только за, сделаешь огромное дело. Начинай...
Автор: Kutsenko
Дата сообщения: 15.04.2008 07:33
2 Single Feniks
Глянь личку.

Повторяю свой вопрос так как на него никто не ответил:
как можна убрать выделение с пароля - когда я нажимаю "далее" открывается следующая страничка с паролем, но он почемуто выделенный, как это можно убрать?
Автор: shurfic
Дата сообщения: 15.04.2008 07:58
Можно ли сделать инсталлятор одним файлом,но свыше лимита 2100000000 байт!!! без деления на тома. Если можно,то где прописать в скрипте? Спасибо.
Автор: Forslay
Дата сообщения: 15.04.2008 09:04
Нет нельзя
Автор: elapse
Дата сообщения: 15.04.2008 09:56
GRom V, в хелпе не нашёл, очевидно, и в коде нельзя. Но можно из исходников: качаешь сырцы с сайта, находишь файл Uninstall.pas, там находишь строку CurUninstallStepChanged(usPostUninstall, True); и дальше слегка "редактируешь" появление сообщения. Потом компилишь Setup.e32 и заменяешь в папке Inno Setup.
Автор: dron0000
Дата сообщения: 15.04.2008 11:25
elapse: Большое спасибо! То что нужно.
Только вот еще проблема. у меня при инсталяции в секции RUN запускается bat файл, который устанавливает другую программу. Мне нужно подменить файл этой программы.

Как мне запустить SaveStringToFile. Думаю запускать в самом конце установки, какая процедура за это отвечает?

Как перезапустить службу?
Автор: VikLabel
Дата сообщения: 15.04.2008 13:40
Подскажите, можно ли в Inno Setup сделать так:
Запускаю setup.exe сразу появляется окно инсталляции (где прогресс)
файлы установились, реестр и т.д. и т.п окно закрылось. Всё!
Хотел перейти с NSIS, там такое можно сделать, легко.
Спасибо!

Добавлено:
PS. Есть смутные... Первое окно не убрать! Прав ли я?
Автор: Single Feniks
Дата сообщения: 15.04.2008 14:52
VikLabel

Сам перешел с NSIS! =) После него все очень просто изучается, если конечно в нем неплохо шарил!
Прямо на прошлой странице читай! Выкладывал 2 скриптика 1н из них именно такой 2й чуть чуть измененый!
Вот ссылка на СообщениЕ!

З.Ы.: Вот народ ленивый пошел... ) Про поиск я вообще молчу... влом страницу назад отлистнуть!
Автор: VikLabel
Дата сообщения: 15.04.2008 15:13
Single Feniks Спасибо!
Как я понял это что то типа "программное нажатие на кнопку" Далее... и уже на следующей странице. Ха! Это левый метод не показа страницы Welcome. Другого видимо нет?

Поиск то есть - нет у ключевого слова дошёл только до 30-й страницы!
Автор: Sampron
Дата сообщения: 15.04.2008 16:43
GRom V
elapse

function InitializeUninstall(): Boolean;
var
ResultCode: Integer;
str: string;
begin
if not UninstallSilent then
begin
if MsgBox('Вы действительно хотите удалить My Program?', mbConfirmation, MB_YESNO) = IDYES then
str:=ExpandConstant('{uninstallexe}')
Exec(str, '/SILENT', '', SW_SHOW, ewNoWait, ResultCode)
end else
begin
Result:=True
end
end;
Автор: Single Feniks
Дата сообщения: 15.04.2008 17:19
VikLabel

Мне тоже по началу не понравился, Но другого так и не нашел, а этот работает неплохо. =) Еще бесила сначала система показа изображений на BG! Чтобы сделать красивый проект приходится комбинировать стандартный метод с BMP и слайдшоу с JPG!
Чет меня еще так в inno расстроило после NSIS тож по мелочи... но уже не помню что!

Но зато можно без проблем изменять размеры, цвета окон, вообще делать полностью свое оформление на любом из окон и т.д. и не через .ini - эт мне в NSIS не нравится ужасно. Окно как есть блин 3х4 так хоть ты оборись на него толку 0! Ктому же сиена Бграунда идет по времени и можно по % прогрессбара, в то время как в NSIS только после определенного этапа или распаковки определенного файла.

Вообщем никто никого не заставляет! Обе эти серды весьма хороши! Сам первые 2 дня плевался, пока изучал, а теперь понравилось! Я здесь написал вроде объективную оценку так что думайте сами решайте сами... иметь или не иметь! ))
Автор: Diawer
Дата сообщения: 15.04.2008 18:16
Появился вопрос.
Сделал инсталлятор с выбором устанавливаемых компонентов, надо сделать что бы при повторном запуске инсталлятора при убирании галочки с уже установленного компонента он соответственно удалялся. Поискал по форуму не нашёл, большой, может пропустил.
Автор: Single Feniks
Дата сообщения: 15.04.2008 18:41
Эээ... а типа обработка данных данной страницы, запись результата в реестр и при запуске проверка наличия этих данных и построения списка исходя из заданных условий присутствия значений не прокатит?!

Ну или почти тем же способом по проверке установленных файлов в папке установки, предварительно взяв путь к папке установки из реестра?!
Автор: machetos
Дата сообщения: 15.04.2008 21:16
Чтоб шрифты распаковались в нужную папку, надо указать DestDir: {fonts}...
а как сделать, чтобы они туда распаковывались перед началом установки (подобно tmp файлам) ???
Автор: elapse
Дата сообщения: 15.04.2008 21:42
machetos

Цитата:
чтобы они туда распаковывались перед началом установки (подобно tmp файлам) ???

Сам же и ответил. Одну строчку было лень дописать? [more=Подробнее][no]
[Setup]
AppName=My Program
AppVerName=My Program [Version]
DefaultDirName={pf}\My Program

[Files]
Source: fuzzy.ttf; DestDir: {tmp}; Flags: dontcopy;

[Code]
procedure InitializeWizard();
begin
ExtractTemporaryFile('fuzzy.ttf');
FileCopy(ExpandConstant('{tmp}\fuzzy.ttf'), ExpandConstant('{fonts}\fuzzy.ttf'), True);
WizardForm.WelcomeLabel1.Font.Name := 'FuzzySock';
end;
[/no]
[/more]

Добавлено:
Sampron
Н-да... Что-то меня в последнее время на какие-то ужасно сложные решения тянет. У тебя "посимпотявей".
Автор: machetos
Дата сообщения: 15.04.2008 21:58
elapse
блин, а я всё думал, читал хелпы, как же мне распаковать шрифт в папку fonts..
а вот тупо скопировать не догнал )))))) спасибо!

Добавлено:
elapse
а можно ли теперь сделать так, чтобы этот шрифт считался как бы установленным (просто скопированный шрифт даже в word'e не отображается)??
Автор: elapse
Дата сообщения: 15.04.2008 22:55
machetos, можешь шрифт выложить?
Заодно проверь этот, не знаю, как в Word'e, но в ОО Writer всё нормально.

Добавлено:
Или используй вариант Sampron'a, там, думаю, проблем не должно быть.
Автор: machetos
Дата сообщения: 15.04.2008 23:51
elapse
проверил шрифт... всё как я и говорил, при простом копировании в папку fonts он нигде не отображается, как только установил через панель управления, везде появился... вообще-то так и должно быть ))))
так что любой не системный шрифт твоим способом не выйдет на чистой системе применить, вот и Sampron говорит, что сначала надо шрифт установить...
Вот еслиб твоим способом можго было не просто скопировать, но ещё и установить его, было бы проще, а пока прийдётся создавать отдельный сетап для шрифта
Автор: serg_aka_lain
Дата сообщения: 16.04.2008 00:09
KurtWagner

Цитата:
Ау народ! Помогите плиз! Как перезагружать компьютер без потверждения??? т.е. устанавливается жмешь готово и он автомат. перезагружаеться!!!


Ну к примеру тащить с инсталлом батник
files
Source "restart.bat"; DestDir: "{tmp}";

code

var ErrorCode: Integer;

procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssDone then
begin
ShellExec('',ExpandConstant('{tmp}\restart.bat'), '', '', SW_Hide, ewWaitUntilTerminated , ErrorCode);
end;
end;

код батника:
shutdown /t 0 /r /f

p.s.
Пользователю скорей всего не очень понравится такая перезагрузка (без предупреждения).
Автор: elapse
Дата сообщения: 16.04.2008 01:05
serg_aka_lain, зачем батник, можно и без него:

Код: Exec('shutdown', '-t 0 -r -f', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
Автор: GRom V
Дата сообщения: 16.04.2008 01:55
Sampron
Огромное спасибо - попробую....
Автор: boss911
Дата сообщения: 16.04.2008 02:20

Цитата:
Последний релиз: 0.20 - Тестовая версия [27.10.2007] New

Когда же будет новая версия Unpacker'a, кто знает или проэкт загнулся? Скажите, плиз! Очень надо!
Автор: Single Feniks
Дата сообщения: 16.04.2008 06:36
to machetos & elapse

А я чет не врубаюсь в чем проблема то?! При установке шрифт тупо пишет себя в реестр. И остается вытащить данные об установке шрифта и запихнуть их в установочник после копирования!

Вот например ключи к вашему ФузиШоку:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
"FuzzySock (TrueType)"="fuzzy.ttf"


Просто дописать чтобы вместе с копированием он его еще и регил в реестре этим ключем в секции шрифтов и все! Вроде все так!
Автор: tatuich
Дата сообщения: 16.04.2008 09:25
Имеется:

1. Исходники InnoUnp версии 0.19 на Delphi:
http://sourceforge.net/project/showfiles.php?group_id=102423

2. Как распаковать Inno 5.2.3 релизом 0.19
Некоторые файлы Inno 5.2.3 можно распаковать следующим путем:
- Взять исходники версии 0.19
- Добавить "5203" в файл StructList
- Создать копию файла struct5110.pas и назвать struct5203.pas
- Поменять название юнита struct5203.pas (первая строка: unit Struct5203;)
- В struct5203.pas во всех строках заменить '5.1.10' на '5.2.03'
- Поменять в файле struct5203.pas строку '5.1.0' на '5.2.0'
- запустить prep.bat
- собрать (build) и скомпилировать innounp.dpr в delphi

От автора способа:

Цитата:
now you can use the new innounp.exe file to unpack Inno 5.2.3.
I have tried with 6 files and have worked correctly.


Теперь ждем того, который все это проделает, скомпилит и выложит сюда. И у нас будет распаковщик 5.2.3 наконец-то.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

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


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