Показать полную графическую версию : [архив] Скрипты Inno Setup. Помощь и советы [часть 2]
МИШАНЧИК
08-05-2010, 08:48
Habetdin,
lmiol, {appdata} и {localappdata} »
У меня с {localappdata} компилирует нормально, а с {appdata} - пишет "Не знаю константу {appdata}".
Просто меня тоже интересует путь: c:\Users\Вы\AppData\Roaming\
Не могу найти правильную переменную.
Habetdin
08-05-2010, 13:46
МИШАНЧИК, {userappdata} - C:\Users\<пользователь>\AppData\Roaming
{localappdata} - C:\Users\<пользователь>\AppData\Local
{commonappdata} - C:\ProgramData
Need for Speed™ Undercover.iss v 2.2 [Final]
http://i052.radikal.ru/1005/3b/bee1ed9c2b0at.jpg (http://radikal.ru/F/i052.radikal.ru/1005/3b/bee1ed9c2b0a.jpg.html) http://s48.radikal.ru/i122/1005/72/c6ecd2fb6412t.jpg (http://radikal.ru/F/s48.radikal.ru/i122/1005/72/c6ecd2fb6412.jpg.html) http://s43.radikal.ru/i100/1005/65/329e6d9ce1d8t.jpg (http://radikal.ru/F/s43.radikal.ru/i100/1005/65/329e6d9ce1d8.jpg.html) http://s003.radikal.ru/i201/1005/c7/a0b5bc87a967t.jpg (http://radikal.ru/F/s003.radikal.ru/i201/1005/c7/a0b5bc87a967.jpg.html)
Скачать (http://rghost.ru/1573116)
Описание скрипта:
• Autorun, содержащий бегущую строку в виде заголовка, описание игры с «эффектом печатной машинки», есть возможность запуска и удаления игры если она присутствует в системе.
• Новый способ текстурирования кнопок и прогрессБара (теперь они прозрачные). Также кастомные чекбоксы. Кнопки имеют 8 состояний (могут быть включенными и выключенными). Присутствует озвучка кнопок и чекбоксов при наведении и нажатии, а также изменения цвета шрифта.
• Установка и использование временного шрифта.
• Проверка системных требований
• Информация о выбранном жестком диске
• Прозрачные DirEdit и GroupEdit.
• Слайд-шоу во время установки, а также процент распаковки и оставшееся время.
• Деинсталлятор также выполнен в стиле установщика (текстурированный прогрессБар, процент удаления и т.д.).
• Удаление игровых сохранений и многое другое.
Страницы Мастера:
WelcomePage, SystemPage*, SelectDirPage, SelectProgramGroupPage, SelectTasksPage*, InstallingPage, FinishedPage, UninstallingPage.
v 2.2
• Добавлен модуль распаковки архивов FreeArc
• FreeArc и AutoRun вынесены в отдельные скрипты (модули) и подключаются к основному скрипту
• Добавлена проверка колличества ядер (сист. требования)
• Исправлен баг в деинсталляторе
• Добавлен новый лейбл, отображающий статус установки (InstallingPage)
• Ну и так, по мелочи...
Скрипт проверен на Inno Setup Compiler 5.3.9 (a) и Inno Setup Compiler 5.3.9 (u), а также на расширенных версиях от ResTools
Огромную благодарность выражаю South (htuos), Shegorat, и всем, кто помогал создавать скрипт!
МИШАНЧИК
09-05-2010, 15:36
Habetdin, большое спасибо!
YURSHAT, спасибо вам и всем кто участвовал в разработке скрипта, добавил скрипт в шапку темы.
Если, я что-то пропустил за время моего отсутствия и вы считаете, что это нужно добавить в шапку темы, то напишите мне в ЛС.
Всех с Праздником!!!
С Днём Победы!!! :Beer:
Serega
добавил скрипт в шапку темы. »
Спасибо!
Если, я что-то пропустил за время моего отсутствия и вы считаете, что это нужно добавить в шапку темы, то напишите мне в ЛС. »
Да вроде ничего особенного не пропустили
Всех с Праздником!!!
С Днём Победы!!! »
Присоединяюсь!!!
помогите пожалуйста разобраться, нужен скрипт который бы упаковал заменяемые файлы и при удалении возвращал их обратно, столько времени потратил а ничего не нашел, дайте пожалуйста ссылку где это обсуждалось
ISFlash (http://www.datafilehost.com/download-31f1a7ea.html) v0.0.1
Это плагин позволит вам добавить поддержку Adobe Flash (отображать swf файлы) в Inno Setup
всех с прошедшим праздником!!!!! :up::4u:
Проблема такая: после установки ПО(в данном случае патчей) скопировался файл(.ехе) и заменил оригинальный(естественно создан чекбокс предлогающий установку патчей и нодвд,(правда он 1 для удобства) в мыслях было так что-бы вначале установился патч, а в конце появился и новый .ехе), короче патчи не установились ругаясь на .ехе... В скрипте фриарка изменено ssPostInstall на ssInstall...
Подробнее: если установить патч то нодвд установится раньше патчей, и они не встанут а нужно что-бы, патчи а потом нодвд... :shocked::(
Source: C:\Stalker\XR_3DA.exe; DestDir: {app}\bin\; Check: InstallUpdate
какой-то может флаг есть специальный?
заранее спасибо!
-------------------------------------
done создал самораспаковывающийся архив и поставил в конец секции [Run] не совсем то что хотел, но работает...
ISFlash v0.0.2
Это плагин позволит вам добавить поддержку Adobe Flash (отображать swf файлы) в Inno Setup
[-] Убрано меню
Скачать (http://www.datafilehost.com/download-f11719ae.html)
MaxHacker
11-05-2010, 15:09
При использовании этого скрипта http://www.forum.oszone.ru/post-1242285-250.html на страницах выбора компонентов\задач эти компоненты\ задачи не отображаются !
Как это исправить ???
Sotonisto
13-05-2010, 12:26
MaxHacker, ты не первый ты и не последний кому нужно что бы скрипт был полным (тут много подобных коментов) :)
Это не ошибка, просто нужно было читать внимательнее:
P.S.: Сделал для стандартных страниц (не все), остальные страницы если хотите, делайте по примеру.
подскажи как реализовать установку доп прог через секцию (код)
у меня щас так:
[Tasks]
Name: soft; Description: {cm:soft}
[Run]
Filename: {src}\soft\en_.net_framework_1.1-4.0_full_x86_x64.exe; Parameters: /S/nolang; StatusMsg: {cm:soft1}; Tasks: soft; Flags: waituntilterminated
Filename: {src}\soft\VCRedist_Extreme_x64.exe; Parameters: /S; StatusMsg: {cm:soft1}; Tasks: soft; Flags: waituntilterminated; Check: IsWin64
Filename: {src}\soft\VCRedist_Extreme_x86.exe; Parameters: /S; StatusMsg: {cm:soft1}; Tasks: soft; Flags: waituntilterminated; Check: not IsWin64
Filename: {src}\soft\DirectX\DXSETUP.exe; Parameters: /silent; StatusMsg: {cm:soft1}; Tasks: soft; Flags: waituntilterminated
а хочу реализовать типо вот этого
[code]
procedure CurStepChanged(CurStep: TSetupStep);
Var
ResultCode: integer;
begin
if CurStep = ssPostInstall then
begin
if PsyhX.Checked then //Это чекбоксы
begin
StatusLabel.Caption:=ExpandConstant('{cm:PsyhXInstall}')
Exec(ExpandConstant('{src}\Redist\PhysX_9.09.0428_SystemSoftware.exe'), '/quiet', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
if DirectX.Checked then //Это чекбоксы
begin
StatusLabel.Caption:=ExpandConstant('{cm:DirectXInstall}')
Exec(ExpandConstant('{src}\DirectX\DXSETUP.exe'), '/silent', ExpandConstant('{src}\DirectX'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
if Redist.Checked then //Это чекбоксы
begin
StatusLabel.Caption:=ExpandConstant('{cm:RedistInstall}')
if isWin64 then
Exec(ExpandConstant('{src}\Redist\vcredist_x64.exe'), '/Q', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, ResultCode)
else begin
Exec(ExpandConstant('{src}\Redist\vcredist_x86.exe'), '/Q', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
end;
end;
end;
YURSHAT, а ты FreeArc в скрипте проверял? А то он как-то странно себя ведет: проценты уменьшаются с 70 до 0, потом все ок, потом около 70 опять уменьшаются. Причем прогрессбар работает... Косяк неопознанного происхождения :)
Класс, теперь еще и деление на ноль
подскажите есть ли такой Флаг который если прописано:
[Run]
Flags: runhidden postinstall;
не предлагал устанавливать ПО,(что-бы не вылетала табличка с выбором нужного ПО, а просто выполняло установку) после завершения, а устанавливал его по очереди?
Habetdin
16-05-2010, 19:47
Tukash, [Run]
Filename: {src}\example.exe; StatusMsg: Установка Examle...; Flags: runhidden waituntilterminated
В конце установки запустит {src}\example.exe в скрытом режиме + будет ждать завершения процесса
Выглядит это так:
http://i074.radikal.ru/1005/25/721496fc7bc0t.jpg (http://i074.radikal.ru/1005/25/721496fc7bc0.png)
З.Ы.: инсталлятор может "зависнуть" - он ведь будет ждать завершения процесса ;)
Habetdin,
спасибо но у меня в скрипте стоит фриакр, т.е. надо что-бы это происходило после копирования архива, т.е. нужен
postinstall
просто там прекомп вот в чем вся проблема... с батником не нравиться, а с секцией код не то... если в скрипте фриарка изменить ssPostinstall на ssinstall то не будет стасус-сообщения, а оно мне очень нужно, уже четвертый день ищу именно этот путь решения, познакомился с 2мя новыми способами, но этот для меня самый удобный, прошу помощи!!!
Habetdin
16-05-2010, 23:50
Tukash, procedure CurStepChanged(CurStep: TSetupStep);
var
ErrorCode: Integer;
begin
if CurStep = ssPostInstall then
begin
UnPackError:= UnPack(Archives)
if UnPackError = 0 then
begin
SetTaskBarTitle(SetupMessage(msgSetupAppTitle))
Exec(ExpandConstant('{src}\example.exe'), '/silent', ExpandConstant('{src}'), SW_HIDE, ewWaitUntilTerminated, ErrorCode);
end
else
begin
// Error occured, uninstall it then
Exec(ExpandConstant('{uninstallexe}'), '/SILENT','', sw_Hide, ewWaitUntilTerminated, n); //откат установки из-за ошибки unarc.dll
SetTaskBarTitle(SetupMessage(msgErrorTitle))
WizardForm.Caption:= SetupMessage(msgErrorTitle) +' - '+ cm('ArcBreak')
end;
end;
end;
Habetdin,
про этот способ знаю... думал есть возможность через ран сделать похожее, но всеравно спасибо!
Habetdin
17-05-2010, 00:07
Tukash, просто:
postinstall
Valid only in a [Run] section. Instructs Setup to create a checkbox on the Setup Completed wizard page. The user can uncheck or check this checkbox and thereby choose whether this entry should be processed or not.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.