Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]
Devils Night
12-09-2011, 09:45
insombia, неплохо, какой скин добавлял? »
No4noylis
12-09-2011, 10:19
Второй вариант "Music2" самое оно, только там выдаёт ошибку. »
Devils Night,
В [_code] добавь эту процедуру:
procedure gdipShutdown; external 'gdipShutdown@{tmp}\botva2.dll stdcall delayload';
И в самом конце, в DeinitializeSetup; добавь:
gdipShutDown;
insombia
12-09-2011, 10:36
как сделать чтобы в Isdone не писалось тестовый прогон? вот скрин http://i32.fastpic.ru/big/2011/0912/a2/fa43272b5ecfb922bc2ede084129faa2.jpg
No4noylis
12-09-2011, 13:54
insombia,
Ты можешь открыть файл russian.ini, найти там "TIME_TEST"="Тестовый прогон", и написать вместо него, "TIME_TEST"="", и естественно сохранить изменения, тогда надписи тестовый прогон не будет в том месте где отмечено на скриншоте. ИЛИ ты можешь провести этот самый тестовый прогон, затем прикрутить к инсталлу records.inf, и тогда там где отмечено на скриншоте будет указано время до окончания установки. ИЛИ на крайний случай ты можешь вручную расставить проценты для распаковки и тогда, у тебя опять же там будет написано время до окончания установки.
как в поле Name: прописать функцию {code:gets|{#l}}, либо каким образом это можно обойти?
[Types]
#define l
#sub AddDescription
Name: {code:gets|{#l}}; Description: {code:gets|{#l}}
#endsub
#for {l = 1; l < 3; l++} AddDescription
[Components]
Name: n1; Description: gdsgdg Types: {code:gets1};
Name: n2; Description: dsfgsg Types: {code:gets2};
insombia, шрифт мелковат, а так нормально
kindza811
12-09-2011, 18:26
Может поможете? :cry2:
insombia
12-09-2011, 18:44
kindza811 http://rghost.ru/21349331 на,только музыки здесь нету можешь сам попробовать вставить
А как сделать чтобы проценты шли не до 300 а до 100? в исдоне
insombia, Автоматическая расстановка процентных соотношений в операциях. При автоматической расстановке необходим тестовый проход для определения времени выполнения каждой операции относительно других. Для включения данного режима необходимо заполнить вторые значения всех функций извлечения архивов нулями. Краткая инструкция: а) первым делом убедитесь, что в начале скрипта закомментирована строка #define records (т.е. необходимо поставить точку с запятой в начале этой строки); б) компилим проект и запускаем на установку. Это и будет нашим тестовым проходом. Все операции должны дойти до конца и завершиться удачно. Прогрессбар будет зашкаливать и все компоненты будут извлечены вне зависимости от того выбраны они, или нет. Все так и должно быть! в) после тестового прогона в указанной папке создастся файл records.inf (имя и путь назначается в процедуре инициализации. О ней см. "подробное описание функций" ниже), его необходимо добавить в проект, раскомметировав, или добавив в начале скрипта строку: #define records Так же стоит отметить, что если сам скрипт находится в папке отличной от той, в которую компилится проект (например в скрипте NFS:Undercover откомпиленный файл сохраняется в Output\setup.exe), то records.inf создастся в папке с setup.exe и его необходимо будет перенести непосредственно к скрипту, или же подправить в секции [Files] его истинное расположение, например: #ifdef records Source: Output\records.inf; DestDir: {tmp}; Flags: dontcopy #endif г) снова откомпилить проект. После этого инсталлер готов к работе. При запуске процесс выполнения операций будет равномерно и корректно отображаться на прогрессбаре.
insombia
12-09-2011, 19:35
Kizekil ну его нафиг кароче мне кажеться это из-за того что я использую для распаковки 3 архива вот и получается 300%
Gnom_aka_Lexander
12-09-2011, 19:55
insombia, блин, тебе привели выдержку из справки, где очень-очень подробно, и, по моему, вполне себе по русски написано, как сделать правильно проценты, при использовании ISdone.dll Или почитать, и то уже лень?
kindza811
12-09-2011, 20:14
insombia, спасибо :Beer:
Ещё после компиляции когда выбираешь язык установки надо долго ждать пока запустится инсталл.Окно активное,но не идёт установка
ребята все привет.
сегодня познакомился с этим софтом. но есть ряд вопросов. с помощью мастера все понятно как сее работает НО:
как вы понимаете я в этом новичок.
1. хочу завернуть в один инсталлер по мимо папки с рядом файлов еще 3 софта которые надо установить.
пример
1сначало копирования папок в нужную деррикторию - ну это просто (среди них настройка.xml)
2затем запуск файла установки программы "софт для сканера" - в фоновом режиме
3затем запуск файла установки программы "Хфсп Драйве" - в фоновом режиме.
4затем открыть окно где будет возможность ввода параметров которые обновят ранне скопированный файл настройка.xml
вывод значков на раб стол.
помогите. есть скайп, агент. аська.
El Sanchez
13-09-2011, 18:37
как в поле Name: прописать функцию {code:gets|{#l}}, либо каким образом это можно обойти? »
Sollar, пардон за {} в имени типов/компонентов, не работает из-за двоеточия. Набросал пример, допустим ваш ini-файл
имеет следующий вид:
[org1]
ex1=1
org=ttt1
[org2]
ex2=1
org=ttt2
, лежит рядом со скриптом и называется test.ini, тогда
[Types]
#define l
#sub AddDescription
Name: {#ReadIni(SourcePath + "\test.ini", "org" + Str(l), "org")}; Description: {#ReadIni(SourcePath + "\test.ini", "org" + Str(l), "org")}
#endsub
#for {l = 1; l < 3; l++} AddDescription
[Components]
Name: n1; Description: n1; Types: {#ReadIni(SourcePath + "\test.ini", "org1", "org")}; Check: gets(ExpandConstant('{#ReadIni(SourcePath + "\test.ini", "org1", "ex1")}'))
Name: n2; Description: n2; Types: {#ReadIni(SourcePath + "\test.ini", "org2", "org")}; Check: gets(ExpandConstant('{#ReadIni(SourcePath + "\test.ini", "org2", "ex2")}'))
[code]
function gets(Param: String): Boolean;
begin
Result := Param = '1';
end;
okril, Готовые ответы (http://innoultra.ru/?page_id=18/)
Roman_-82
14-09-2011, 03:52
Всем привет. :) Пишу скрипт установки игры, нужно сделать два задания (или больше) - Установка русской озвучки и Установка русского текста и так далее. Подскажите пожалуйста как правильно указать пути. Возможно ли вскрыть уже готовый инсталлятор и посмотреть как он сделан (интересует скрипт)? Заранее благодарю.
Вот по такому примеру - http://i29.fastpic.ru/thumb/2011/0914/65/ff26753e27d040d6d55d907ac0163765.jpeg (http://fastpic.ru/view/29/2011/0914/ff26753e27d040d6d55d907ac0163765.jpg.html)
valyok666
14-09-2011, 16:15
Roman_-82, посмотри справку components
R.i.m.s.k.y.
14-09-2011, 17:55
Roman_-82, тезка, вскрытие скрипта тебе мало поможет, тк ты даже не удосужился а) прочитать справку про Components; и б) скачать из шапки примеры
Roman_-82
14-09-2011, 17:55
valyok666
Наполовину разобрался. Но как указать нужный путь установки файлов? Например, мне нужно чтобы папка с русской озвучкой скопировалась по определенному пути (C:\Games\Game\System\Sound)?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.