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

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

Автор: Linda85
Дата сообщения: 03.04.2008 12:34
Sampron
Спасибо, заработало.
Автор: Forslay
Дата сообщения: 03.04.2008 14:31
Обычно, когда сжимаешь какойто определённый файл, который должен распаковыватся в temp к примеру, то процесс копирования его в temp происходит значительно медленее. Поэтому диалоговое окно мастера раскрывается не сразу а приходится этого ждать... Некоторые юзеры просто могут подумать что интсаляха зависла, и просто закроют приложение... сославшись на неисправность инсталлки....

Так вот поэтому меня интересует есть ли какая то система, которая позволяла бы оповестить пользователя о том, что идёт подготовка к инсталляции, как это обычно бывает у некоторых программ... Вы наверное сами не раз с таким встречалис...

Автор: htuos
Дата сообщения: 03.04.2008 15:30
machetos

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

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

Цитата:
А ещё неплохо бы уметь изменять позицию плеера и окна инфы о мп3

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

Цитата:
у меня почему-то вместо инфы о мп3 показывает всякую хрень (квадратики, кружочки)

проверяй шрифты, используется Verdana

Добавлено:
Forslay

Цитата:
есть ли какая то система, которая позволяла бы оповестить пользователя о том, что идёт подготовка к инсталляции, как это обычно бывает у некоторых программ...

создай форму в InitializeSetup, положи на нее Label или NewStaticText и напиши, что тебе нужно. в самом конце InitializeWizard закрой эту форму
Автор: elapse
Дата сообщения: 03.04.2008 18:09
Forslay, используй тогда InstallShield или что-то типа такого в своём коде: http://http://data.cod.ru/61988109770
Извлечение делаешь ручками по определённому положению прогрессбара. Только криво это как-то всё. Или, как советовал htuos, тем более такой пример на http://www.vincenzo.net/isxkb/ уже имеется.
Автор: Genri
Дата сообщения: 03.04.2008 18:54
Forslay -- если временных файлов несколько, то http://forum.ru-board.com/topic.cgi?forum=5&topic=4801&start=760#2
Если файл один и большой, то сложнее. Но тоже можно придумать. Но один большой временный, это в любом случае не очень хорошо.
Автор: Diawer
Дата сообщения: 03.04.2008 19:14
Как сделать что бы (выделить название) эта надпись была другим шрифтом или допустим жирными:

[Setup]
AppVerName=My name
Автор: Forslay
Дата сообщения: 03.04.2008 20:36

Цитата:
тем более такой пример на http://www.vincenzo.net/isxkb/ уже имеется.
Там на английском, я так и ненашёл того раздела, где предлагается такой пример...

Genri Спасибо, не плохой пример... Но всё равно сначала инсталл застывает, прогресс бар почему то не сразу показывается.... всё равно спасибо за отзывчивость !

Но всё же может есть другие варианты....
Автор: Genri
Дата сообщения: 03.04.2008 21:06
Forslay -- придумать можно 48 вариантов. Зависит от ситуации. Скрипт надо видеть.
Автор: Forslay
Дата сообщения: 03.04.2008 21:31

Код: Russian.FormErrorMsg=Произошла ошибка при создании форм предустановки!%nПрограмма будет принудительно завершена! Приносим свои извинения...
Автор: machetos
Дата сообщения: 04.04.2008 11:57
htuos

Цитата:
ты хочешь, чтобы я еще один плеер написал? думаешь мне заняться нечем?
если он тебе не нужен, то не включай его в инсталлятор


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

Добавлено:
htuos
к тому ж и писать ничё те не надо почти, только удалить пару-тройку кнопок из кода да и добавить в свою прогу (скажем плеер small)
Автор: htuos
Дата сообщения: 04.04.2008 13:01

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

нафига для одной песни плеер
кому не нравится тот звук выключит или сам нарисуй кнопку на форме инсталлятора и не парься

Цитата:
к тому ж и писать ничё те не надо почти, только удалить пару-тройку кнопок из кода да и добавить в свою прогу (скажем плеер small)

а на фига мне такой кастрированный плеер? к тому же второй плеер увеличит размер длл
Автор: Victor_Dobrov
Дата сообщения: 04.04.2008 13:16
htuos, кастрированный плеер нафиг не нужен, добавь плейлист, горячие клавиши и нормальный показ UTF-8 тэгов.
Автор: Raf_SE
Дата сообщения: 04.04.2008 14:01
Как сделать чтоб у "unins000.exe" была другая иконка? Пробивал "UninstallIconFile=Uninstall.ico", но эффекта нет.
Автор: GRom V
Дата сообщения: 04.04.2008 14:16
Genri
Глянь пожалуйсто личку...
Автор: Diawer
Дата сообщения: 04.04.2008 14:54
Помогите довести до ума [more=Код][Code]
var
ResultStr:string;
ResultCode: Integer;

function InitializeSetup(): Boolean;
begin
RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Сприлл. Тайна Бермудского треугольника_is1', 'UninstallString', ResultStr)
if ResultStr='' then
begin
Result := True;
end
else
ResultStr:=RemoveQuotes(ResultStr);
if MsgBox('Программа уже установленна.' #13#13 'Нажмите "Да" для предварительного удаления программы, "Нет" для выхода.', mbInformation, MB_YESNO) = idYes
then
Exec(ResultStr, '', '', SW_SHOWNORMAL, ewNoWait, ResultCode)
end;[/more]

При повторном запуске инсталлятора появляется сообщение из секции коде, нажав "Нет" всё прекращяется, нажав "Да" запускается Деинсталлятор, первое его окно "Вы дейсвительно хотите удалить приложение и все его компоненты?", вопрос в том, при нажатии "Да" начинается удаление, а нажав "Нет" прекращяется, как что бы нажав "Нет" продолжалась Установка,

И ещё подскажите пожалуйста, как сделать, что бы код запускался не по записи в реестре, а по существующей уже такой папки в которую по умолчанию устанавливается программа (DefaultDirName={pf}\Sprill Bermude).
Автор: htuos
Дата сообщения: 04.04.2008 15:25
Victor_Dobrov

Цитата:
добавь плейлист, горячие клавиши и нормальный показ UTF-8 тэгов.

насчет плэйлиста, не уверен что это большая необходимость для инсталляторов, хотя подумаю над этим вопросом

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

киньте кто-нибудь ссылочку на mp3 с тэгом в UTF-8, а то я музыку вообще не слушаю (в наличии всего 6 файлов), поэтому проверять не на чем. а искать где-то в нете как-то нет желания, да и уверенности, что найду, нету

Автор: dron0000
Дата сообщения: 04.04.2008 18:11
У меня ситуация такая. В процессе инсталяции я запускаю bat файл который устанавливает другую программу(БД,в тихом режиме), после этого запускаются еще батники со скриптами. Все это занимает много времени. Выполняется это у меня в секции RUN, т.е после копирования и распаковки всех файлов. И получаеться, что у меня очень долго просто висит надпись Завершение установкии полная строка установки. Пользователи могут подуть что инсталятор завис.

Как по другому это реализовать или можно заставить полосу установки двигаться?
Автор: Raf_SE
Дата сообщения: 04.04.2008 18:34
dron0000
Filename: "{app}\REN.bat"; StatusMsg: "Переименовывание файла Install.exe..."; Flags: runhidden waituntilterminated;
А вобще, лично я бы не рекомендовал прятать от юзера "долго работающие" батники. Покрайней мере лично мне, как юзеру, не нравится когда от меня чтото скрывают.

Добавлено:
Как сделать чтоб у "unins000.exe" была другая иконка? Пробивал "UninstallIconFile=Uninstall.ico", но эффекта нет.

Добавлено:
Как сделать чтоб при выборе компонента "Version\Beta" или "Version\Demo", отключалась возможность выбора компонента "Text\Russian" ?

[more=Components]
[Components]
Name: "Text"; Description: Текст; Types: full compact custom; Flags: fixed
Name: "Text\English"; Description: Английский; Flags: exclusive; Types: full
Name: "Text\Russian"; Description: Русский; Flags: exclusive;

Name: "Version"; Description: Версия; Types: full compact custom; Flags: fixed
Name: "Version\Beta"; Description: Beta 12.24.97 D; Flags: exclusive
Name: "Version\Demo"; Description: Demo; Flags: exclusive
Name: "Version\100"; Description: 1.00; Flags: exclusive
Name: "Version\107"; Description: 1.07; Flags: exclusive
Name: "Version\108"; Description: 1.08; Flags: exclusive
Name: "Version\108b"; Description: 1.08b; Flags: exclusive
Name: "Version\109"; Description: 1.09; Flags: exclusive
Name: "Version\109b"; Description: 1.09b; Flags: exclusive
Name: "Version\110"; Description: 1.10; Flags: exclusive
Name: "Version\111"; Description: 1.11; Flags: exclusive
Name: "Version\111b"; Description: 1.11b; Flags: exclusive
Name: "Version\112"; Description: 1.12; Flags: exclusive
Name: "Version\112b"; Description: 1.12b; Flags: exclusive
Name: "Version\113"; Description: 1.13; Flags: exclusive
Name: "Version\113b"; Description: 1.13b; Flags: exclusive
Name: "Version\113c"; Description: 1.13c; Flags: exclusive
Name: "Version\113d"; Description: 1.13d; Flags: exclusive
Name: "Version\113e"; Description: 1.13e; Flags: exclusive
Name: "Version\113f"; Description: 1.13f; Flags: exclusive
Name: "Version\114"; Description: 1.14; Flags: exclusive
Name: "Version\115"; Description: 1.15; Flags: exclusive
Name: "Version\1151"; Description: 1.15.1; Flags: exclusive
Name: "Version\1152"; Description: 1.15.2; Flags: exclusive; Types: full
[/more]
Автор: Alex Zaguzin
Дата сообщения: 04.04.2008 19:12
Русик для последней версии нужен? Для предыдущей я делал. Самому и англ хватает - но если нужно - выложу. Нужен?
Автор: Raf_SE
Дата сообщения: 04.04.2008 19:16
Alex Zaguzin
Непонял.... Ет ты мне? Ты про StarCraft? Если да, то в принципе нужен, только при условии что ты русифицыровал стар версии 1.15.1. Если ниже, то не нужно, я сечас юзаю русик от Frezze, сделанный на основе версии 1.13f.
Автор: Alex Zaguzin
Дата сообщения: 04.04.2008 19:23

Цитата:
Русик для последней версии нужен? Для предыдущей я делал. Самому и англ хватает - но если нужно - выложу. Нужен?
- я про сабж...(Инно).
Автор: Raf_SE
Дата сообщения: 04.04.2008 19:41
Alex Zaguzin
Да кому оно надо! Кроме кнопки "Run" там больше знать нечего не нужно! Ты бы лучше новую версию справки перевел.

По теме:
Как сделать чтобы при выборе компонента "Version\Beta" или "Version\Demo" место, необходимый для установки уменьшалось на 601391104 байт?

Добавлено:
Уже не нужно
Автор: KurtWagner
Дата сообщения: 05.04.2008 02:58
Можно ли вместо WizardSmallImageFile=E:\image.bmp можно было поставить рисунок на весь инсталлер???
Автор: GRom V
Дата сообщения: 05.04.2008 05:31
Genri
Огромное спасибо - все работает!!!
Автор: Forslay
Дата сообщения: 05.04.2008 11:33
Как убрать со страницы инсталлятора справа в самом верхнем углу "Х" - закрытие окна?

Заранее спасибо.
Автор: ZABXOZ
Дата сообщения: 05.04.2008 13:47
Alex Zaguzin
Нужен, выложите плз
Автор: Forslay
Дата сообщения: 05.04.2008 21:08
WizardForm.BorderStyle := bsDialog;

А можно тоже самое, только ещё снести крестик сверху? и желательно значок инсталлятора оставить? Может кто знает?
Автор: Sampron
Дата сообщения: 05.04.2008 21:58
Forslay
Стандартными средствами никак, попробуй что-нибудь из этого:

WizardForm.BorderIcons:=[]
или
WizardForm.BorderStyle:=bsSingle
WizardForm.BorderIcons:=[biSystemMenu]
Автор: Hater_Decay
Дата сообщения: 05.04.2008 22:58
Прошу прощения если данный вопрос освещался (а он наверняка освещался), но просмотреть свыше 300 страниц всех топиков по inno setup представляется мне физически невозможным.

Итак, затеял я сделать бэкап. Для этого использовал
Inno Setup 5.2.3
Руководство по расширенным возможностям Inno Setup 5 (не для чайников) от Kindly [5.1 версия]
QuickStart Pack 5.2.3 (ispack-5.2.3.exe)

Использовал "Пoлнoцeннoe peзepвиpoвaниe фaйлoв c кoпиpoвaниeм в oтдeльную пaпку"

Всё работает, только вот одно "но": установка проходит, файлы в папку Backup копируются паравильно, вобщем - красота. но после удаления файлы из Backup переносятся косячно. Что именно имеется ввиду: во время установки есть файлы которые копируются в {app}\bin\. Соответственно и бэкап: {app}\Backup\bin\. Но после удаления папка {app}\Backup\bin\ переносится по адресу {app}\bin\bin\ (т.е. в bin создаётся подкаталог с таким же именем, хотя файлы должны копироваться, как вы понимаете в {app}\bin\. Аналогичная фигня и с {app}\Data (файлы из {app}\Backup\Data переносятся в {app}\Data\Data), а вот {app}\README.txt нормально восстанавливается из бэкапа.

Прошу помочь и сказать почему файлы из Backup'a восстанавливаются криво.
Автор: htuos
Дата сообщения: 06.04.2008 12:24
Forslay

Цитата:
Как убрать со страницы инсталлятора справа в самом верхнем углу "Х" - закрытие окна?


Цитата:
WizardForm.BorderStyle := bsDialog;

А можно тоже самое, только ещё снести крестик сверху? и желательно значок инсталлятора оставить? Может кто знает?

1. совсем снести только вместе с иконкой. иконку правда можно нарисовать самому
2. можно сделать ее недоступной. примерно [more=так]function GetSystemMenu(hWnd: HWND; bRevert: BOOL): LongWord; external 'GetSystemMenu@user32.dll stdcall';
function DeleteMenu(hMenu: LongWord; uPosition, uFlags: UINT): BOOL; external 'DeleteMenu@user32.dll stdcall';

procedure InitializeWizard;
var
h:integer;
begin
h:=GetSystemMenu(WizardForm.Handle,False);
if (h<>0) then DeleteMenu(h,61536,0);
end;[/more]

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

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


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