|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8] |
|
Скрипты Inno Setup. Помощь и советы [часть 8]
|
Ветеран Сообщения: 1264 |
Профиль | Отправить PM | Цитировать
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы (Archive Pack 1):
Скрипты Inno Setup. Помощь и советы [часть 6] Скрипты Inno Setup. Помощь и советы [часть 7] |
|
Отправлено: 08:52, 02-02-2015 |
Старожил Сообщения: 217
|
Профиль | Отправить PM | Цитировать Всем привет может кто нибудь скинуть скрипт пикник с отображением картинок при наведение на компонент.
|
Отправлено: 13:47, 17-02-2015 | #121 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать Как можно выгрузить dll (разблокировать путь) не закрывая процесс?
Скриншот
|
------- Отправлено: 16:34, 17-02-2015 | #122 |
Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать Цитата diman_21Ru:
Скрытый текст
[Setup] AppName=Моя программа AppVersion=1.5 AppPublisher=YURSHAT AppPublisherURL=http://krinkels.org/ DefaultDirName={pf}\Моя программа [Languages] Name: "RU"; MessagesFile: "compiler:Languages\Russian.isl" [CustomMessages] RU.CompName1=Компонент 1 RU.CompName2=Компонент 2 RU.ComponentsInfo=Наведите курсор мыши на компонент, чтобы прочитать его описание. RU.ComponentsImgInfo=Наведите курсор мыши на компонент, чтобы посмотреть его превью. RU.CompDesc1=Описание первого компонента RU.CompDesc2=Описание второго компонента [Files] Source: "compiler:WizModernImage.bmp"; DestName: "CompDescImg1.bmp"; Flags: dontcopy Source: "compiler:WizModernImage-IS.bmp"; DestName: "CompDescImg2.bmp"; Flags: dontcopy [Types] Name: full; Description: Full installation; Flags: iscustom [Components] Name: comp1; Description: "{cm:CompName1}"; Types: full Name: comp2; Description: "{cm:CompName2}"; Types: full [Code] type TComponentDesc = record Description: String; ImageName: String; Index: Integer; end; var CompDescs: array of TComponentDesc; CompDescPanel, CompDescImgPanel: TPanel; CompDescText: array[1..2] of TLabel; CompIndex, LastIndex: Integer; CompDescImg: TBitmapImage; procedure ShowCompDescription(Sender: TObject; X, Y, Index: Integer; Area: TItemArea); var i: Integer; begin if Index = LastIndex then Exit; CompIndex := -1; for i := 0 to GetArrayLength(CompDescs) -1 do begin if (CompDescs[i].Index = Index) then begin CompIndex := i; Break; end; end; if (CompIndex >= 0) and (Area = iaItem) then begin if not FileExists(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName) then ExtractTemporaryFile(CompDescs[CompIndex].ImageName); CompDescImg.Bitmap.LoadFromFile(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName); CompDescImg.Show; CompDescText[2].Caption := CompDescs[CompIndex].Description; CompDescText[2].Enabled := True; end else begin CompDescText[2].Caption := CustomMessage('ComponentsInfo'); CompDescText[2].Enabled := False; CompDescImg.Hide; end; LastIndex := Index; end; procedure CompListMouseLeave(Sender: TObject); begin CompDescImg.Hide; CompDescText[2].Caption := CustomMessage('ComponentsInfo'); CompDescText[2].Enabled := False; LastIndex := -1; end; procedure AddCompDescription(AIndex: Integer; ADescription: String; AImageName: String); var i: Integer; begin i := GetArrayLength(CompDescs); SetArrayLength(CompDescs, i + 1); CompDescs[i].Description := ADescription; CompDescs[i].ImageName := AImageName; CompDescs[i].Index := AIndex - 1 end; procedure InitializeWizard(); begin WizardForm.SelectComponentsLabel.Hide; WizardForm.TypesCombo.Hide; WizardForm.ComponentsList.SetBounds(ScaleX(0), ScaleY(0), ScaleX(184), ScaleY(205)); WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription; WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave; CompDescImgPanel := TPanel.Create(WizardForm); with CompDescImgPanel do begin Parent := WizardForm.SelectComponentsPage; SetBounds(ScaleX(192), ScaleY(0), ScaleX(225), ScaleY(120)); BevelInner := bvLowered; end; CompDescText[1] := TLabel.Create(WizardForm); with CompDescText[1] do begin Parent := CompDescImgPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10)); AutoSize := False; WordWrap := True; Enabled := False; Caption := CustomMessage('ComponentsImgInfo'); end; CompDescImg := TBitmapImage.Create(WizardForm); with CompDescImg do begin Parent := CompDescImgPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10)); Stretch := True; Hide; end; CompDescPanel := TPanel.Create(WizardForm); with CompDescPanel do begin Parent := WizardForm.SelectComponentsPage; SetBounds(ScaleX(192), ScaleY(125), ScaleX(225), ScaleY(80)); BevelInner := bvLowered; end; CompDescText[2] := TLabel.Create(WizardForm); with CompDescText[2] do begin Parent := CompDescPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescPanel.Width - ScaleX(10), CompDescPanel.Height - ScaleY(10)); AutoSize := False; WordWrap := True; Enabled := False; Caption := CustomMessage('ComponentsInfo'); end; AddCompDescription(1, CustomMessage('CompDesc1'), 'CompDescImg1.bmp'); AddCompDescription(2, CustomMessage('CompDesc2'), 'CompDescImg2.bmp'); end; |
|
------- Отправлено: 20:34, 17-02-2015 | #123 |
Старожил Сообщения: 217
|
Профиль | Отправить PM | Цитировать Dodakaedr, А код на без описаний компонентов не найдется?
|
Отправлено: 12:16, 18-02-2015 | #124 |
Старожил Сообщения: 217
|
Профиль | Отправить PM | Цитировать
По умолчанию стоят галочки на Бекап и удаление , как можно снять галочки? что бы по умолчанию они были сняты
|
||||
Отправлено: 13:21, 18-02-2015 | #125 |
Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать Цитата diman_21Ru:
Скрытый текст
[Setup] AppName=Моя программа AppVersion=1.5 AppPublisher=YURSHAT AppPublisherURL=http://krinkels.org/ DefaultDirName={pf}\Моя программа [Languages] Name: "RU"; MessagesFile: "compiler:Languages\Russian.isl" [CustomMessages] RU.CompName1=Компонент 1 RU.CompName2=Компонент 2 RU.ComponentsInfo=Наведите курсор мыши на компонент, чтобы прочитать его описание. RU.ComponentsImgInfo=Наведите курсор мыши на компонент, чтобы посмотреть его превью. RU.CompDesc1=Описание первого компонента RU.CompDesc2=Описание второго компонента [Files] Source: "compiler:WizModernImage.bmp"; DestName: "CompDescImg1.bmp"; Flags: dontcopy Source: "compiler:WizModernImage-IS.bmp"; DestName: "CompDescImg2.bmp"; Flags: dontcopy [Types] Name: full; Description: Full installation; Flags: iscustom [Components] Name: comp1; Description: "{cm:CompName1}"; Types: full Name: comp2; Description: "{cm:CompName2}"; Types: full [Code] type TComponentDesc = record Description: String; ImageName: String; Index: Integer; end; var CompDescs: array of TComponentDesc; CompDescImgPanel: TPanel; CompDescText: array[1..2] of TLabel; CompIndex, LastIndex: Integer; CompDescImg: TBitmapImage; procedure ShowCompDescription(Sender: TObject; X, Y, Index: Integer; Area: TItemArea); var i: Integer; begin if Index = LastIndex then Exit; CompIndex := -1; for i := 0 to GetArrayLength(CompDescs) -1 do begin if (CompDescs[i].Index = Index) then begin CompIndex := i; Break; end; end; if (CompIndex >= 0) and (Area = iaItem) then begin if not FileExists(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName) then ExtractTemporaryFile(CompDescs[CompIndex].ImageName); CompDescImg.Bitmap.LoadFromFile(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName); CompDescImg.Show; end else begin CompDescImg.Hide; end; LastIndex := Index; end; procedure CompListMouseLeave(Sender: TObject); begin CompDescImg.Hide; LastIndex := -1; end; procedure AddCompDescription(AIndex: Integer; ADescription: String; AImageName: String); var i: Integer; begin i := GetArrayLength(CompDescs); SetArrayLength(CompDescs, i + 1); CompDescs[i].Description := ADescription; CompDescs[i].ImageName := AImageName; CompDescs[i].Index := AIndex - 1 end; procedure InitializeWizard(); begin WizardForm.SelectComponentsLabel.Hide; WizardForm.TypesCombo.Hide; WizardForm.ComponentsList.SetBounds(ScaleX(0), ScaleY(0), ScaleX(184), ScaleY(205)); WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription; WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave; CompDescImgPanel := TPanel.Create(WizardForm); with CompDescImgPanel do begin Parent := WizardForm.SelectComponentsPage; SetBounds(ScaleX(192), ScaleY(0), ScaleX(225), ScaleY(120)); BevelInner := bvLowered; end; CompDescText[1] := TLabel.Create(WizardForm); with CompDescText[1] do begin Parent := CompDescImgPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10)); AutoSize := False; WordWrap := True; Enabled := False; Caption := CustomMessage('ComponentsImgInfo'); end; CompDescImg := TBitmapImage.Create(WizardForm); with CompDescImg do begin Parent := CompDescImgPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10)); Stretch := True; Hide; end; AddCompDescription(1, '', 'CompDescImg1.bmp'); AddCompDescription(2, '', 'CompDescImg2.bmp'); end; Цитата diman_21Ru:
|
||
------- Отправлено: 14:44, 18-02-2015 | #126 |
Старожил Сообщения: 217
|
Профиль | Отправить PM | Цитировать Как можно не нажимая на галочку или флажок а просто на строчку компонента чтобы он выбирался.
|
Последний раз редактировалось diman_21Ru, 18-02-2015 в 18:53. Отправлено: 15:09, 18-02-2015 | #127 |
Пользователь Сообщения: 72
|
Профиль | Отправить PM | Цитировать Здраствуйте , не подскажете как можна сделать кнопки , при нажатии что б менялся язык инстолятора
|
Отправлено: 21:58, 18-02-2015 | #128 |
Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать Цитата ShadeUa:
Скрытый текст
[setup] AppName=My Application AppVersion=1.5 DefaultDirName={pf} ShowLanguageDialog=auto [Languages] Name: rus; MessagesFile: compiler:Languages\Russian.isl Name: eng; MessagesFile: compiler:Default.isl [CustomMessages] ; Русский rusButtonBack=< &Назад rusButtonNext=&Далее > rusButtonCancel=Отмена rusSetupWindowTitle=Установка — %1 rusWelcomeLabel1=Вас приветствует Мастер установки %1 rusWelcomeLabel2=Программа установит %1, версия %2 на Ваш компьютер.%n%nРекомендуется закрыть все прочие приложения перед тем, как продолжить.%n%nНажмите «Далее», чтобы продолжить, или «Отмена», чтобы выйти из программы установки. ; English engButtonBack=< &Back engButtonNext=&Next > engButtonCancel=Cancel engSetupWindowTitle=Setup — %1 engWelcomeLabel1=Welcome to the %1 Setup Wizard engWelcomeLabel2=This will install %1 version %2 on your computer.%n%nIt is recommended that you close all other applications before continuing.%n%nClick Next to continue, or Cancel to exit Setup. [Code] var lang: String; langBtn: TButton; procedure ChangeLang(); begin WizardForm.BackButton.Caption:= CustomMessage(lang+'ButtonBack'); WizardForm.NextButton.Caption:= CustomMessage(lang+'ButtonNext'); WizardForm.CancelButton.Caption:= CustomMessage(lang+'ButtonCancel'); WizardForm.Caption:= FmtMessage(CustomMessage(lang+'SetupWindowTitle'), ['{#SetupSetting('AppName')}']); WizardForm.WelcomeLabel1.Caption:= FmtMessage(CustomMessage(lang+'WelcomeLabel1'), ['{#SetupSetting('AppName')}']); WizardForm.WelcomeLabel2.Caption:= FmtMessage(CustomMessage(lang+'WelcomeLabel2'), ['{#SetupSetting('AppName')}', '{#SetupSetting('AppVersion')}']); end; procedure LangBtnClick(Sender: TObject); begin if lang='rus' then begin lang:= 'eng'; langBtn.Caption:= 'рус'; end else begin lang:= 'rus'; langBtn.Caption:= 'eng'; end; ChangeLang(); end; procedure InitializeWizard; begin langBtn:= TButton.Create(WizardForm); with langBtn do begin SetBounds(10,WizardForm.CancelButton.Top,30,WizardForm.CancelButton.Height) OnClick:= @LangBtnClick; Parent:= WizardForm; end; if ActiveLanguage='rus' then begin lang:= 'rus'; langBtn.Caption:= 'eng'; end else begin lang:= 'eng'; langBtn.Caption:= 'рус'; end; end; |
|
------- Отправлено: 22:46, 18-02-2015 | #129 |
Пользователь Сообщения: 56
|
Профиль | Отправить PM | Цитировать Цитата Gnom_aka_Lexander:
файл 123.zip загружался в temp там же распаковывался в папку 123 только если в выборе компонентов выбран компонент d при этом чтобы эта процедура проходила до начала копирования других компонентов инстолятора а после установки файл 123 и папка 123 удалялись с InnoTools Downloader думаю разберусь... |
|
Отправлено: 11:18, 19-02-2015 | #130 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты 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 |
|