|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 9] |
|
Скрипты Inno Setup. Помощь и советы [часть 9]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов!
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы [часть 6] | Скрипты Inno Setup. Помощь и советы [часть 6].7z Скрипты Inno Setup. Помощь и советы [часть 7] | Скрипты Inno Setup. Помощь и советы [часть 7].7z Скрипты Inno Setup. Помощь и советы [часть 8] | Скрипты Inno Setup. Помощь и советы [часть 8].7z |
|
Отправлено: 16:09, 04-04-2018 |
Новый участник Сообщения: 41
|
Профиль | Отправить PM | Цитировать Dodakaedr, огромное Вам Спасибо!
Этот код рабочий! Возможно кому-то это также будет полезно )) + 1500 лайков ![]() ![]() |
Последний раз редактировалось OldGamer, 12-01-2025 в 10:39. Отправлено: 17:53, 11-01-2025 | #1121 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать Здравствуйте уважаемые Форумчане! может кто подскажет как сделать чтобы курсор не исчезал, когда вводишь текст в поле Edit? |
Отправлено: 10:31, 16-04-2025 | #1122 |
Новый участник Сообщения: 14
|
Профиль | Сайт | Отправить PM | Цитировать Такой вопрос. Есть Ехешник сделанный с помощью ПО GameScript Generator и скриптов Инно.
Можно ли этот Ехе как-то открыть и посмотреть. Естно в обучающих моментах для общего ознакомления \ обучения? InnoExtractor 2025 10.3.0.137 Ultra пробовал, не открывает. Вот сам ехе |
Отправлено: 14:25, 19-06-2025 | #1123 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата Eugene_Пилигрим@vk:
|
|
Отправлено: 20:14, 23-06-2025 | #1124 |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать может кто подскажет как замедлить (WizardForm.ProgressGauge), чтобы (WizardForm.ProgressGauge) не мелькал (при маленьком объеме .ехе), а работал как верхний - в зависимости от выбраных значений, заполнялся медленно?
[Setup] AppName=ProgressBar AppVerName=ProgressBar OutputBaseFilename=ProgressBar DefaultDirName=ProgressBar OutputDir=userdocs:..\desktop Uninstallable=no [Files] Source: "compiler:Examples\MyProg.exe"; DestDir: "{app}" Source: "compiler:Examples\MyProg-x64.exe"; DestDir: "{app}"; [ Code] procedure InitializeWizard; begin WizardForm.ProgressGauge.Parent:=WizardForm; WizardForm.ProgressGauge.SetBounds(ScaleX(-1), ScaleY(290), ScaleX(500), ScaleY(30)); //WizardForm.ProgressGauge.Position:=10; end; var ProgressPage: TOutputProgressWizardPage; I, Step, Wait: Integer; procedure CurStepChanged(CurStep: TSetupStep); begin if CurStep = ssPostInstall then begin Wait:=2000; Step:=5; ProgressPage:=CreateOutputProgressPage(WizardForm.PageNameLabel.Caption, WizardForm.PageDescriptionLabel.Caption); ProgressPage.SetProgress(0, Wait); ProgressPage.Show; try for I := 0 to Wait div Step do begin ProgressPage.SetProgress(I * Step, Wait); Sleep(Step); end; finally ProgressPage.Hide; ProgressPage.Free; end; end; end; |
Отправлено: 05:33, 30-06-2025 | #1125 |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать вот рабочий пример
[Setup] AppName=ProgressBar AppVerName=ProgressBar OutputBaseFilename=ProgressBar DefaultDirName=ProgressBar OutputDir=userdocs:..\desktop Uninstallable=no [ Code] function GetWindowLong(Wnd: HWnd; Index: Integer): Longint; external 'GetWindowLongA@user32.dll stdcall'; function SetWindowLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint; external 'SetWindowLongA@user32.dll stdcall'; function GetTickCount: DWord; external 'GetTickCount@kernel32 stdcall'; function SetTimer(hWnd, nIDEvent, uElapse, lpTimerFunc: LongWord): LongWord; external 'SetTimer@User32.dll stdcall'; function KillTimer(hWnd, nIDEvent: LongWord): LongWord; external 'KillTimer@User32.dll stdcall'; var ProgressBar: TNewProgressBar; Timer: LongWord; Done: Boolean; InitialTime: DWord; procedure Install; var ErrorCode: Integer; begin if ShellExec('Open', 'Timeout.exe', '/T ' + IntToStr(10000 div 1000), '', SW_HIDE, ewWaitUntilTerminated, ErrorCode) then begin Done:=True; end; end; procedure UpdateProgressBar(HandleW, msg, idEvent, TimeSys: LongWord); begin if Done then begin KillTimer(0, Timer); ProgressBar.Position:=ProgressBar.Max; end else begin ProgressBar.Position:=GetTickCount - InitialTime; end; end; procedure InitializeWizard; begin WizardForm.OuterNotebook.SetBounds(ScaleX(0), ScaleY(0), ScaleX(0), ScaleY(0)); ProgressBar:=TNewProgressBar.Create(WizardForm); ProgressBar.Parent:=WizardForm; ProgressBar.SetBounds(ScaleX(-1), ScaleY(250), ScaleX(500), ScaleY(30)); ProgressBar.Max:=10000; SetWindowLong(ProgressBar.Handle, -20, GetWindowLong(ProgressBar.Handle, -20) or $2000000); end; procedure CurPageChanged(CurPageID: Integer); begin if CurPageID=wpInstalling then begin Timer:=SetTimer(0, 0, 50, CreateCallback(@UpdateProgressBar)); InitialTime:=GetTickCount; Install; end end; тоесть переписать этот кусок кода procedure CurStepChanged(CurStep: TSetupStep); begin if CurStep = ssPostInstall then begin Wait:=2000; Step:=5; ProgressPage:=CreateOutputProgressPage(WizardForm.PageNameLabel.Caption, WizardForm.PageDescriptionLabel.Caption); ProgressPage.SetProgress(0, Wait); ProgressPage.Show; try for I := 0 to Wait div Step do begin ProgressPage.SetProgress(I * Step, Wait); Sleep(Step); end; finally ProgressPage.Hide; ProgressPage.Free; end; end; end; |
Последний раз редактировалось Beavimo, 30-06-2025 в 18:38. Отправлено: 18:28, 30-06-2025 | #1126 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 7] | El Sanchez | Автоматическая установка приложений | 2499 | 02-02-2015 08:59 | |
Скрипты Inno Setup. Помощь и советы [часть 6] | El Sanchez | Автоматическая установка приложений | 2494 | 10-03-2014 11:51 | |
Скрипты Inno Setup. Помощь и советы [часть 5] | El Sanchez | Автоматическая установка приложений | 1999 | 28-03-2013 19:09 | |
Скрипты Inno Setup. Помощь и советы [часть 4] | El Sanchez | Автоматическая установка приложений | 2099 | 22-05-2012 23:16 | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 |
|