|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 3] |
|
Скрипты Inno Setup. Помощь и советы [часть 3]
|
Ветеран Сообщения: 1133 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Inno Setup [все вопросы] часть 1 Inno Setup [все вопросы] часть 2 |
|
------- Отправлено: 00:28, 04-11-2010 |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать Vista-w,
Он у тебя в файлах есть: Source: arc.ini; DestDir: {tmp}; Flags: dontcopy А в архив его нельзя, он нужен для распаковки этих архивов. |
------- Отправлено: 17:39, 17-01-2011 | #591 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 60
|
Профиль | Отправить PM | Цитировать Лександер,
Да не я архив скачал, этого файла там нет. |
Отправлено: 17:58, 17-01-2011 | #592 |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать Vista-w, Блиннн, его там и не должно быть, это файл настроек Архиватора ФриАрк. он должен быть указан в скрипте у тебя.
|
------- Отправлено: 18:02, 17-01-2011 | #593 |
Пользователь Сообщения: 60
|
Профиль | Отправить PM | Цитировать Лександер,
Ладно спасибо за помощь, но выберу что нить по проще. Есть ли скрипт для распаковки 7z архива, но с отдельным прогресс-баром? |
Отправлено: 18:07, 17-01-2011 | #594 |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать Vista-w, Есть, тут в примерах в шапке видел.
Помгите кто-нибудь, тут: чекбокс выбран, я не могу нйти где, мне нужно, чтоб по умолчанию он не был вбран.. |
------- Отправлено: 18:15, 17-01-2011 | #595 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Лександер,
А если этот HLP перенести в компоненты? не вариант, нет? [Components] # define HLPW7Desc "Установить обновление для Windows Se7en Программа Справка Windows для просмотра 32-разрядных файлов справки (.HLP)" Name: HLPW7; Description: {#HLPW7Desc}; Types: full; Check: ( (not isHLPinstalled) and (isWin7)) [ C ode] procedure InitializeWizard(); ... if ( (not isHLPinstalled) and (isWin7) ) then WizardForm.ComponentsList.Checked[WizardForm.ComponentsList.Items.IndexOf('{#HLPW7Desc}')]:=False; ... [Run] Components: HLPW7; Filename: {sys}\wusa.exe; WorkingDir: {tmp}; Parameters: {tmp}\KB917607-x86.msu /quiet /norestart; Check: (not IsWin64); Flags: waituntilterminated 32bit; Components: HLPW7; Filename: {sys}\wusa.exe; WorkingDir: {tmp}; Parameters: {tmp}\KB917607-x64.msu /quiet /norestart; Check: (IsWin64); Flags: waituntilterminated 64bit; |
------- Последний раз редактировалось R.i.m.s.k.y., 17-01-2011 в 19:20. Отправлено: 19:11, 17-01-2011 | #596 |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать R.i.m.s.k.y., я проще разобрался, сейчас общий код выложу с коментариями, может кому пригодится, в общем, если HLP-пач ставить нужно, то показаны чекбокс, подпись, и чекбокс выбран, если HLP-пач ставить не нужно, то галка с чекбокса снимается, (иначе всеравно поставится
![]() Добавил скрипт во вложении, описанная опция прокоментирована. Проверил у себя дважды - работает ![]() |
------- Последний раз редактировалось Gnom_aka_Lexander, 15-02-2011 в 17:22. Отправлено: 19:49, 17-01-2011 | #597 |
Пользователь Сообщения: 58
|
Профиль | Отправить PM | Цитировать |
Отправлено: 20:26, 17-01-2011 | #598 |
Пользователь Сообщения: 58
|
Профиль | Отправить PM | Цитировать Лександер, ааааа...ботва2.длл
![]() а вообще спасибо зы думаю стоит добавить все материалы: картинки, стили и прочее... |
Отправлено: 22:07, 17-01-2011 | #599 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Что нужно написать или поменять в этом скрипте чтобы при запуске инсталлятора музыка не играла а на панели были кнопки вкл музыку и стоп а кнопка пауза была скрыта
[code] [Setup] AppName=Example.Play.MP3.Music.On.Start.Up.With.Texture AppVerName=Example.Play.MP3.Music.On.Start.Up.With.Texture AppPublisher=genri.sampron.iTASmania_Inc.uncle DefaultDirName=C:\Play.MP3 OutputBaseFilename=play.mp3.by.genri.sampron.iTASmania_Inc.uncle [Files] Source: BASS.dll; DestDir: {tmp}; Flags: dontcopy noencryption Source: sound.mp3; DestDir: {tmp}; Flags: dontcopy noencryption nocompression Source: MusicButton.bmp; DestDir: {tmp}; Flags: dontcopy const BASS_ACTIVE_STOPPED = 0; BASS_ACTIVE_PLAYING = 1; BASS_ACTIVE_STALLED = 2; BASS_ACTIVE_PAUSED = 3; BASS_SAMPLE_LOOP = 4; var mp3Handle: HWND; mp3Name: String; PlayButton, PauseButton, StopButton: TPanel; PlayImage, PauseImage, StopImage: TBitmapImage; PlayLabel, PauseLabel, StopLabel: TLabel; MouseLabel: Tlabel; function BASS_Init(device: Integer; freq, flags: DWORD; win: hwnd; CLSID: Integer): Boolean; external 'BASS_Init@files:BASS.dll stdcall delayload'; function BASS_StreamCreateFile(mem: BOOL; f: PChar; offset: DWORD; length: DWORD; flags: DWORD): DWORD; external 'BASS_StreamCreateFile@files:BASS.dll stdcall delayload'; function BASS_Start(): Boolean; external 'BASS_Start@files:BASS.dll stdcall delayload'; function BASS_ChannelPlay(handle: DWORD; restart: BOOL): Boolean; external 'BASS_ChannelPlay@files:BASS.dll stdcall delayload'; function BASS_ChannelIsActive(handle: DWORD): Integer; external 'BASS_ChannelIsActive@files:BASS.dll stdcall delayload'; function BASS_ChannelPause(handle: DWORD): Boolean; external 'BASS_ChannelPause@files:BASS.dll stdcall delayload'; function BASS_Stop(): Boolean; external 'BASS_Stop@files:BASS.dll stdcall delayload'; function BASS_Pause(): Boolean; external 'BASS_Pause@files:BASS.dll stdcall delayload'; function BASS_Free(): Boolean; external 'BASS_Free@files:BASS.dll stdcall delayload'; procedure PlayMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin PlayImage.Left := -96 end; procedure PlayMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin PlayImage.Left := 0 end; procedure PlayMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if PlayImage.Left <> -96 then PlayImage.Left := -192 StopImage.Left := -64 end; procedure PauseMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin PauseImage.Left := -128 end; procedure PauseMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin PauseImage.Left := -32 end; procedure PauseMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if PauseImage.Left <> -128 then PauseImage.Left := -224 StopImage.Left := -64 end; procedure StopMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin StopImage.Left := -160 end; procedure StopMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin StopImage.Left := -64 end; procedure StopMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if StopImage.Left <> -160 then StopImage.Left := -256 PlayImage.Left := 0 PauseImage.Left := -32 end; procedure MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin PlayImage.Left := 0 PauseImage.Left := -32 StopImage.Left := -64 end; function InitializeSetup(): Boolean; begin ExtractTemporaryFile('BASS.dll'); ExtractTemporaryFile('sound.mp3'); mp3Name := ExpandConstant('{tmp}\sound.mp3'); BASS_Init(-1, 44100, 0, 0, 0); mp3Handle := BASS_StreamCreateFile(FALSE, PChar(mp3Name), 0, 0, BASS_SAMPLE_LOOP); BASS_Start(); BASS_ChannelPlay(mp3Handle, False); Result := True; end; procedure PlayButtonOnClick(Sender: TObject); begin case BASS_ChannelIsActive(mp3Handle) of BASS_ACTIVE_PAUSED: begin BASS_ChannelPlay(mp3Handle, False); PlayButton.Hide PauseButton.Show end; BASS_ACTIVE_STOPPED: begin BASS_Init(-1, 44100, 0, 0, 0); mp3Handle := BASS_StreamCreateFile(FALSE, PChar(mp3Name), 0, 0, BASS_SAMPLE_LOOP); BASS_Start(); BASS_ChannelPlay(mp3Handle, False); PlayButton.Hide PauseButton.Show end; end; end; procedure PauseButtonOnClick(Sender: TObject); begin BASS_ChannelPause(mp3Handle); PauseButton.Hide PlayButton.Show end; procedure StopButtonOnClick(Sender: TObject); begin BASS_Stop(); BASS_Free(); PauseButton.Hide PlayButton.Show end; procedure InitializeWizard(); begin ExtractTemporaryFile('MusicButton.bmp') MouseLabel := TLabel.Create(WizardForm) MouseLabel.Width := WizardForm.Width MouseLabel.Height := WizardForm.Height MouseLabel.Autosize := False MouseLabel.Transparent := True MouseLabel.OnMouseMove := @MouseMove MouseLabel.Parent := WizardForm PlayButton := TPanel.Create(WizardForm) PlayButton.Left := 50 PlayButton.Top := 320 PlayButton.Width := 32 PlayButton.Height := 33 PlayButton.Cursor := crHand PlayButton.ShowHint := True PlayButton.Hint := 'Воспроизведение музыки' PlayButton.OnClick := @PlayButtonOnClick PlayButton.Parent := WizardForm PlayImage := TBitmapImage.Create(WizardForm) PlayImage.Left := 0 PlayImage.Top := 0 PlayImage.Width := 288 PlayImage.Height := 33 PlayImage.Enabled := False PlayImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MusicButton.bmp')) PlayImage.Parent := PlayButton // PlayImage.ReplaceColor:=$E2E2E2 PlayImage.ReplaceWithColor:=clBtnFace PlayLabel := TLabel.Create(WizardForm) PlayLabel.Width := PlayButton.Width PlayLabel.Height := PlayButton.Height PlayLabel.Autosize := False PlayLabel.Transparent := True PlayLabel.OnClick := @PlayButtonOnClick PlayLabel.OnMouseDown := @PlayMouseDown PlayLabel.OnMouseUp := @PlayMouseUp PlayLabel.OnMouseMove := @PlayMouseMove PlayLabel.Parent := PlayButton PauseButton := TPanel.Create(WizardForm) PauseButton.Left := 50 PauseButton.Top := 320 PauseButton.Width := 32 PauseButton.Height := 33 PauseButton.Cursor := crHand PauseButton.ShowHint := True PauseButton.Hint := 'Приостановить музыку' PauseButton.OnClick := @PauseButtonOnClick PauseButton.Parent := WizardForm PauseImage := TBitmapImage.Create(WizardForm) PauseImage.Left := -32 PauseImage.Top := 0 PauseImage.Width := 288 PauseImage.Height := 33 PauseImage.Enabled := False PauseImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MusicButton.bmp')) PauseImage.Parent := PauseButton // PauseImage.ReplaceColor:=$E2E2E2 PauseImage.ReplaceWithColor:=clBtnFace PauseLabel := TLabel.Create(WizardForm) PauseLabel.Width := PauseButton.Width PauseLabel.Height := PauseButton.Height PauseLabel.Autosize := False PauseLabel.Transparent := True PauseLabel.OnClick := @PauseButtonOnClick PauseLabel.OnMouseDown := @PauseMouseDown PauseLabel.OnMouseUp := @PauseMouseUp PauseLabel.OnMouseMove := @PauseMouseMove PauseLabel.Parent := PauseButton StopButton := TPanel.Create(WizardForm) StopButton.Left := 82 StopButton.Top := 320 StopButton.Width := 32 StopButton.Height := 33 StopButton.Cursor := crHand StopButton.ShowHint := True StopButton.Hint := 'Остановить музыку' StopButton.OnClick := @StopButtonOnClick StopButton.Parent := WizardForm StopImage := TBitmapImage.Create(WizardForm) StopImage.Left := -64 StopImage.Top := 0 StopImage.Width := 288 StopImage.Height := 33 StopImage.Enabled := False StopImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MusicButton.bmp')) StopImage.Parent := StopButton // StopImage.ReplaceColor:=$E2E2E2 StopImage.ReplaceWithColor:=clBtnFace StopLabel := TLabel.Create(WizardForm) StopLabel.Width := StopButton.Width StopLabel.Height := StopButton.Height StopLabel.Autosize := False StopLabel.Transparent := True StopLabel.OnClick := @StopButtonOnClick StopLabel.OnMouseDown := @StopMouseDown StopLabel.OnMouseUp := @StopMouseUp StopLabel.OnMouseMove := @StopMouseMove StopLabel.Parent := StopButton end; procedure DeinitializeSetup(); begin BASS_Stop(); BASS_Free(); end; |
Отправлено: 20:01, 18-01-2011 | #600 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Утилиты - [addon] Inno Setup | CrOsP | Наборы обновлений для Windows XP/2003/Windows 7 | 33 | 11-05-2011 16:03 | |
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] | Serega | Автоматическая установка приложений | 2651 | 08-11-2010 18:34 | |
Inno Setup 5.3.6 | OSZone Software | Новости программного обеспечения | 0 | 15-11-2009 17:30 | |
Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 | |
Inno Setup | tradeukraine | Вебмастеру | 3 | 13-06-2006 20:39 |
|