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

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

Автор: vintage_1
Дата сообщения: 25.09.2011 16:04
Snoopak96
Попробую в следующей версии исправить

Добавлено:
Snoopak96
Я ещё просто рассчитывал на одно видео.
Автор: I_Am_Good
Дата сообщения: 25.09.2011 16:54
помогите http://forum.ru-board.com/topic.cgi?forum=5&topic=36421&start=2120#9
Автор: VASYAKRN
Дата сообщения: 25.09.2011 17:31

добавте ещо один чекбокс для microsoft visual c++ и пожалста добавте лейб для размер жесткого диска и сделайте доступно места типа доступно места на диске (место) (проценти%) как у nik1967 darksiders

Скрипт

Автор: vistaw
Дата сообщения: 25.09.2011 17:44
I_Am_Good
1) Если про шрифт, что он не ровный тогда убери стиль [fsItalic]
Типа этого
-------------------------------------
Font.Style:=[fsItalic];
-------------------------------------
2) Выставь флаг
-------------------------------------
Flags: checkedonce
-------------------------------------

Добавлено:
VASYAKRN
1)Смотри код, как создан чекбокс для DirectX, скопируй его и подправь под себя.
2)http://forum.ru-board.com/topic.cgi?forum=5&topic=35146&start=1299&limit=1&m=5#1
Автор: VASYAKRN
Дата сообщения: 25.09.2011 17:53
vistaw
1,Пробивал вибивает ошибка
2,Появляютса лишние лейби
Автор: vistaw
Дата сообщения: 25.09.2011 17:57
VASYAKRN
Смотри на то куда ссылается эта ошибка, а ненужные лейблы удали, вроде не сложно.
Автор: Edison007007
Дата сообщения: 25.09.2011 17:59
VASYAKRN
Цитата:
дайте пожалста ЕХЕ вариант BlackSelf


смотри ЛС
Автор: Brabusdark
Дата сообщения: 25.09.2011 18:06
Edison007007
если можно мне тоже
Автор: VASYAKRN
Дата сообщения: 25.09.2011 18:21
Пожалста дайте ЕХЕ версии даних скриптов

http://s2.itrash.ru/idb/566a5bccb5917fe723e2b8bccee5d90b/o7.jpg

http://lostpic.net/images/d3045429a347c10b2dcffb4a7f58f48d.png
Автор: vistaw
Дата сообщения: 25.09.2011 18:37
VASYAKRN
Если тебе нужны .exe'шники то качай данные игры, которые на скринах инсталлла, а скрипт тебе не кто не даст.
Автор: VASYAKRN
Дата сообщения: 25.09.2011 18:42
у меня трафик дарогой
Автор: Snoopak96
Дата сообщения: 25.09.2011 18:53
vintage_1

Цитата:
Попробую в следующей версии исправить

Было бы не плохо, только бы оперативку библиотека не ела сильно, в районе так скажем 20 мб - было бы замечательно.

Автор: Despofix
Дата сообщения: 25.09.2011 21:13
если я правильно понял то папку переименовать можно с помощью инно следующим способом:
procedure RenameFolder;
begin
RenameFile(ExpandConstant('{app}\Name'), ExpandConstant('{app}\NewName'));
end;

возникает вопрос как сделать чтобы процедура выполнялась после установки. к примеру при нажатии на кнопку завершить или же когда прошла распаковка архивов
Автор: Snoopak96
Дата сообщения: 25.09.2011 23:00
Despofix
а зачем отдельную процедуру делать, повесь на кнопку завершить, примерно так будет выглядеть:

Цитата:
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result:=True;
If CurPageID=wpFinished then
RenameFile(ExpandConstant('{app}\Name'), ExpandConstant('{app}\NewName'));
end;
Автор: Despofix
Дата сообщения: 25.09.2011 23:46
Snoopak96
спасибо. но у сам разобрался.сделал так:
if CurStep=ssPostInstall then begin
RenameFile(ExpandConstant('{app}\\Name'), ExpandConstant('{app}\NewName'))
end;
end;
Автор: Sergey_Demchuk
Дата сообщения: 26.09.2011 00:43
Gnom3

Цитата:
Трбуется убить родные меседжбоксы в начале и в конце работы деинсталлятра.

Интересует еще вопрос?
Автор: YURSHAT
Дата сообщения: 26.09.2011 01:28
Gnom3
Sergey_Demchuk

Цитата:
Это понятно, но смысл? Трбуется убить родные меседжбоксы в начале и в конце работы деинсталлятра. ПРисоединяюсь к вопросу Sergey_Demchuk.

Мы с South при создании Андеркавера второго тоже когда-то колдовали над деинсталлятором.

Убрать эти мессаги стандартным способом не получится так как они жестко вшиты в деинсталлятор. Можно сделать по извращенски (как и многое в инно ). Пример:


Код: function InitializeUninstall:boolean;
var
i,ErrorCode:integer;
IsSilent:boolean;
begin
IsSilent:=False;
for i:=1 to ParamCount do
if ParamStr(i)='/silent' then begin
IsSilent:=True;
Break;
end;
if not IsSilent then begin
Result:=False;
ShellExec('',ExpandConstant('{uninstallexe}'),'/silent','',SW_SHOW,ewNoWait,ErrorCode);
end else Result:=True;
end;
Автор: meekrab
Дата сообщения: 26.09.2011 03:31
Edison007007
Ты чего это там раздаешь?
Gnom3
Я же тебе показывал как можно сделать это. И сказал где все можно найти.
Можно сделать тот же де инстал и на визарде черз ID. (Но его придутся делать каждый раз отдельно)
Это как вариант.
Автор: YURSHAT
Дата сообщения: 26.09.2011 04:32
meekrab

Цитата:
Можно сделать тот же де инстал и на визарде черз ID. (Но его придутся делать каждый раз отдельно)

Это самый оптимальный вариант. Результаты моих давнешних тестов показали, что стандартными средствами сделать, что-то стоящее не получается.

Я так понимаю целью убийства сообщений является создание доп. страниц типа "страница приветствия=>страница деинсталляции=>страница завершения деинсталляции". Я как говорил выше уже пытался когда-то проделывать это. То есть, сначала, создавал форму приветсвия, потом уничтожал, потом появлялась форма деинсталляции, а потом снова создавал форму завершения. Скажу, что с эстетической стороны все довольно плачевно, особенно если использовать скины и дллки типа ботвы. Между этими тремя формами получается довольно большой разрыв, что не есть гуд. Да и кода очень много получается.

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

ЗЫ.meekrab, здарова!
Автор: Sergey_Demchuk
Дата сообщения: 26.09.2011 07:35
YURSHAT
Ты прав, его и и нету. Я использовал

Код:
function InitializeUninstall(): Boolean;
var
RCode: Integer;
begin
FileCopy(ExpandConstant('{app}\AC14_IMG-Cover_3636_RJAD.bmp'), ExpandConstant('{tmp}\AC14_IMG-Cover_3636_RJAD.bmp'), False);
FileCopy(ExpandConstant('{app}\canf.bmp'), ExpandConstant('{tmp}\canf.bmp'), False);
FileCopy(ExpandConstant('{app}\button.png'), ExpandConstant('{tmp}\button.png'), False);
FileCopy(ExpandConstant('{app}\botva2.dll'), ExpandConstant('{tmp}\botva2.dll'), False);
FileCopy(ExpandConstant('{app}\innocallback.dll'), ExpandConstant('{tmp}\innocallback.dll'), False);
Result := False;
if not UninstallSilent then
begin
Exec(ExpandConstant('{uninstallexe}'), '/SILENT', '', SW_SHOW, ewNoWait, RCode)
Exit;
end;
if CancelCustomUninstall <> mrCancel then Result:=true;
end;
Автор: ShadowHawk
Дата сообщения: 26.09.2011 10:54
ЗНАТОКИ!!!
Извините, что повторюсь - но проблема эта не дает двигаться вперед .


Цитата:

log1stable

Цитата:ShadowHawk, каталог переименовывается где и как?


В моем случае, есть человек, который к программе отношения не имеет, он просто отвечает за эти каталоги 1 2 и 3. Их в общем то много и в зависимости от их сочетания получется НОВАЯ версия. Т.е. сегодня это набор 1 2 и 3 завтра может быть 2 4 9 и т.д.
В реальности может быть и так что кол-во каталогов может измениться как в плюс так и в минус. Но для простоты ( хотя по мне и так сложно ) ) будем считать что число каталогов не меняется а меняется только название. Причем сам setup.exe этим не занимается. Он должен просто понять что имя сменилось - т.е. и путь к каталогу сменился, но его в любом случае надо копировать.

К сожалению просто перечислить все возможные каталоги не подходит - название заранее не известно.



Я подумал, может (как временное решение) ограничить кол-во этих каталогов скажем числом 10. И ввести однотипные названия, типо Dir0, Dir1, ... Dir9. А уже внутри каждого положить отдельную каталог 1 2 или 3. При переименовании будет меняться скажем 3 на 9, но начальные каталоги остануться неизменными, далее в секциях [Components] и [Files] их "связываем":

[Types]
Name: Dir1; Description: "Dir1";

[Components]
Name: Dir1; Description: Dir1; Types: Dir1

[Files]
Source: {src}\Source\Dir1\*; DestDir: {app}\Dir1; Components: Dir1; Flags: external recursesubdirs createallsubdirs;

А в момент запуска проверять если каталог Dir1 существует то компонент показать или же нет.
Но с названиями конечно полная бредятина получается . Может "Посмотреть" название каталога который в данный момент в Dir1 находится (1 2 или 9)??? и изменить в componentslist название?
Автор: Edison007007
Дата сообщения: 26.09.2011 12:06

Цитата:
Ты чего это там раздаешь?

да в общем ничего секретнного
Автор: Xom9I4oK
Дата сообщения: 26.09.2011 16:29
1) Как совместить (объединить в одну) страницу выбора папки установки (SelectDirPage) с SelectTasksPage?
2) Как сменить курсор в виде буквы I (когда наводишь на текст) и в виде руки когда наводишь на ссылку в странице текста лицензии на нужный мне из указанного файла. Файл с лицензией подгружается так [more]LoadStringFromFile(ExpandConstant('{tmp}') + '\License.rtf', License)
WizardForm.LicenseMemo.RTFText := License;[/more]. Нужен реально проверенный способ (желательно не подменяющий системных курсоров), тк непроверенных я сам штук под 10 придумал и не один не сработал... В других местах там где надо у меня работает смена курсора.
Автор: log1stable
Дата сообщения: 26.09.2011 18:35
Xom9I4oK:

1) [more=Объединение страниц][Setup]
AppName=Dir+Group
AppVersion=Dir+Group
DefaultDirName={pf}\Dir+Group
DisableProgramGroupPage=yes


Код:
procedure InitializeWizard();
begin
with WizardForm.DirBrowseButton do
begin
Top := ScaleY(73);
end;

with WizardForm.DirEdit do
begin
Top := ScaleY(73);
end;

with WizardForm.SelectDirBrowseLabel do
begin
Top := ScaleY(36);
end;

with WizardForm.SelectGroupBitmapImage do
begin
Top := ScaleY(105);
Parent := WizardForm.SelectDirPage;
end;

with WizardForm.GroupBrowseButton do
begin
Top := ScaleY(176);
Parent := WizardForm.SelectDirPage;
end;

with WizardForm.GroupEdit do
begin
Top := ScaleY(177);
Parent := WizardForm.SelectDirPage;
end;

with WizardForm.SelectStartMenuFolderBrowseLabel do
begin
Parent := WizardForm.SelectDirPage;
Top := ScaleY(140);
end;

with WizardForm.SelectStartMenuFolderLabel do
begin
Parent := WizardForm.SelectDirPage;
Top := ScaleY(113);
end;
end;[/more]

2) [code]
procedure InitializeWizard();
begin
WizardForm.LicenseMemo.Cursor := crHand;
WizardForm.InfoBeforeMemo.Cursor := crHand;
WizardForm.InfoAfterMemo.Cursor := crHand;
end;
Автор: vintage_1
Дата сообщения: 26.09.2011 19:28
ISVideo.dll
ISVideo.dll - Это библиотека позволяет запускать МР3 музыку и AVI видео в инсталляторе

Добавлено:
6 новых процедур, 3 для ISMusic (Pause, Play, Stop) и 3 для ISVideo (Pause, Play, Stop).
Поиск установленых кодеков Xvid

Исправлено:
Процедура ISMusicInit
Процедура ISVideoInit
Процедура ISCloseProcess
Версия - 1.1

Скачать
Автор: Xom9I4oK
Дата сообщения: 26.09.2011 19:34
log1stable

Цитата:
1) Объединение страниц

Спасибо, но Вы не те страницы объединили . Вторая страница это та где из секции [Tasks] инфа берется... Или это просто пример?

Цитата:
2) Код:

Мне надо как раз наоборот. Я же написал сменить стандартные курсоры на те что я из файла буду брать...
Автор: Despofix
Дата сообщения: 26.09.2011 22:14

Цитата:
Спасибо, но Вы не те страницы объединили . Вторая страница это та где из секции [Tasks] инфа берется... Или это просто пример?

это пример
Автор: meekrab
Дата сообщения: 27.09.2011 14:12
YURSHAT
У меня есть идея как сделать. Но нужно скрыть мессагу которую приходиться вызывать.
И есть еще одна идея но она вполне бредовая. Приеду домой попробую написать, по идее должно все работать.
У меня есть готовый вариант с 2мя и 3мя стр. на де инстал. Если интересно могу скинуть готовый вариант.
Здорова Юр )
Автор: mifkys
Дата сообщения: 27.09.2011 16:24
Народ, помогите, пожалуйста. Надо каким-нибудь способом узнать, сколько оперативной памяти установлено на компьютере и в зависимости от этого проделать некоторые действия.
Автор: Brabusdark
Дата сообщения: 27.09.2011 16:42
зайди в мой комьютер
правая кнопка
далее свойства

Добавлено:
люди а как сделать цвет инсталла черным или серым?
http://rghost.ru/23258551

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177

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


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