Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 8]
может ли inno перезаписать фалы в архиве (архив формата .pack)? »
Не может. Только методом переупаковки с помощью запуска специальной утилиты с параметрами командной строки.
postal1703
10-03-2018, 13:12
в процессе сборки установщика вылезает ошибка с надписью "Ошибка компилятора""Не удается найти указанный файл" и ссылается на проблемный файл, в названии которого присутствуют чешские или венгерские
буквы. подскажите как решить эту проблему, терпения не хватит переименовывать тысячу файлов)
pakuwacenu
10-03-2018, 18:07
Как изменить текст на MessageBox на при нажатии кнопки "Cancel" ?
habib2302
10-03-2018, 19:14
pakuwacenu,
[Messages]
ExitSetupMessage=Установка не завершена. Если вы выйдете, программа не будет установлена.%n%nВы сможете завершить установку, запустив программу установки позже.%n%nВыйти из программы установки?
pakuwacenu
10-03-2018, 19:36
[Messages]
ExitSetupMessage=Установка не завершена. Если вы выйдете, программа не будет установлена.%n%nВы сможете завершить установку, запустив программу установки позже.%n%nВыйти из программы установки? »
А через секцию [Code] как сделать ?
habib2302
10-03-2018, 21:36
pakuwacenu,
[CustomMessages]
ExitSetupMessage=Завершить установку?
[Code]
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
Confirm:=false; Cancel:=false;
WizardForm.ProgressGauge.State:=npbsPaused;
case MsgBoxEx(WizardForm.Handle, CustomMessage('ExitSetupMessage'),
SetupMessage(msgExitSetupTitle), MB_YESNO or MB_DEFBUTTON2 or MB_ICONINFORMATION, 0, 0) of
IDYES: Cancel:=true;
IDNO: begin WizardForm.BringToFront; WizardForm.ProgressGauge.State:=npbsNormal; end;
end;
end;
И не забывайте про это http://forum.oszone.net/faq.php?faq=vb_board_usage#faq_thanks
pakuwacenu
10-03-2018, 23:35
[CustomMessages]
ExitSetupMessage=Завершить установку?
[Code]
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
Confirm:=false; Cancel:=false;
WizardForm.ProgressGauge.State:=npbsPaused;
case MsgBoxEx(WizardForm.Handle, CustomMessage('ExitSetupMessage'),
SetupMessage(msgExitSetupTitle), MB_YESNO or MB_DEFBUTTON2 or MB_ICONINFORMATION, 0, 0) of
IDYES: Cancel:=true;
IDNO: begin WizardForm.BringToFront; WizardForm.ProgressGauge.State:=npbsNormal; end;
end;
end; »
Line 51: Column 8: Unknown identifier 'MsgBoxEx'
Не использую Inno Setup Ultra
Немного не так, нужно чтобы не было секции [CustomMessages], весь текст сообщения должен быть полностью в коде (секция [Code])
habib2302
11-03-2018, 11:05
Немного не так, нужно чтобы не было секции [CustomMessages], весь текст сообщения должен быть полностью в коде (секция [code]) »
а какая вам разница. если пытайтесь зашифровать скрипт на дефолтной версии inno setup, то я смысла не вижу, а лучше взять и перейти на inno setup ultra т.к. она шифрует скрипт, не дает возможности распаковать инсталл. в принципе это вам решать
doctor_allcome
12-03-2018, 17:11
Добрый день!
Подскажите пожалуйста - как в окне выбора папки добавить чекбокс с возможность выбора установки (Steam, No Steam) со сменой пути, при смене пункта в чекбокс?
Пример как это сделать в отдельном окне видел, но как в окне выбора папки это реализовать самостоятельно разобраться не могу.
Подскажите пожалуйста - как в окне выбора папки добавить чекбокс с возможность выбора установки (Steam, No Steam)
Случаем не оно (https://www.upload.ee/files/8175214/Steam.rar.html)
doctor_allcome
14-03-2018, 16:43
Случаем не оно »
О, как раз ОНО! Спасибо.
doctor_allcome
16-03-2018, 11:43
Добрый день!
Подскажите еще пожалуйста - возможно ли сделать проверку MD5 группы файлов не используя ResTools?
pollipen
18-03-2018, 09:48
парни всем доброго дня!!!!
подскажите как мне мне поставить анимацию как на картинке
http://i103.fastpic.ru/thumb/2018/0318/8e/_3dcc56782f4f8a74b6586ce5c034cd8e.jpeg (http://fastpic.ru/view/103/2018/0318/_3dcc56782f4f8a74b6586ce5c034cd8e.gif.html)
как мне поставить анимацию как на картинке
Так это же слайд шоу, пример есть в справке (» Inno Setup Faq. Слайд-шоу в окне инсталляции)
pakuwacenu
20-03-2018, 14:52
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
Confirm:=False; Cancel:=False;
MsgBox('Are you sure you want to cancel {#AppName} installation?', mbInformation, MB_YESNO);
end;
Как сделать кнопки рабочими ?
Как сделать кнопки рабочими ? »
Удалить процедуру procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
Darthame
26-03-2018, 00:03
Здравствуйте, при создании инсталлятора я столкнулся с проблемой. Мне нужно сделать несколько кастомных страниц с выбором компонентов, а также с превью и описанием компонентов, желательно через botva2. Кто-нибудь знает, как это можно реализовать?
Inno Setup Scripting 5.1 от Kindly
https://yadi.sk/d/zLRic4yZ3TvyHM
MD5: 8864d4574596690b9d9f282e2d4d6a64
3 МБ
Здравствуйте, уважаемые пользователи форума Oszone.net. Нужна ваша помощь!
1.Можно ли убрать значок папки с текстом и переместить на это место текст с полем, которые расположены ниже (см.скрин.1);
2.Можно ли установить изображение, не важно в каком формате(см.скрин.1);
3.Можно ли поставить текст, допустим: разработано кем-то и т.д.(см.скрин.1);
4.Почему-то не указывается выбор установки: полная, кастомная и т.д., наверно я опять накосячил где-то(см.скрин.2);
5.Как сделать, чтобы при наведении на компонент отображалось изображение, именно в моём коде.(см.скрин.2)
--
Заранее спасибо вам огромное! Если найду ответы на свои вопросы, то сразу буду зачёркивать пункты.
[Types]
Name: default; Description: Полная установка(SimpleRadar);
Name: srl; Description: Полная установка(SimpleRadar Lite);
Name: fr; Description: Полная установка(Froosh);
Name: lsc; Description: Полная установка(LoneySilverCity);
[Components]
Name: SR; Description: {code:CompHelper|От Simple Radar}; Types: default; Flags: exclusive;
Name: SR\MAP1; Description: {code:CompHelper|Cobblestone|sr1.bmp};
Name: SR\MAP2; Description: {code:CompHelper|Dust II|sr2.bmp};
Name: SR\MAP3; Description: {code:CompHelper|Inferno|sr3.bmp};
Name: SR\MAP4; Description: {code:CompHelper|Mirage|sr4.bmp};
Name: SR\MAP5; Description: {code:CompHelper|Nuke|sr5.bmp};
Name: SR\MAP6; Description: {code:CompHelper|Overpass|sr6.bmp};
Name: SR\MAP7; Description: {code:CompHelper|Train|sr7.bmp};
;Name: SRL; Description: {code:CompHelper|От Simple Radar Lite}; Types: srl; Flags: exclusive;
;Name: SRL\MAP1; Description: {code:CompHelper|Cobblestone|srl1.bmp};
;Name: SRL\MAP2; Description: {code:CompHelper|Dust II|srl2.bmp};
;Name: SRL\MAP3; Description: {code:CompHelper|Inferno|srl3.bmp};
;Name: SRL\MAP4; Description: {code:CompHelper|Mirage|srl4.bmp};
;Name: SRL\MAP5; Description: {code:CompHelper|Nuke|srl5.bmp};
;Name: SRL\MAP6; Description: {code:CompHelper|Overpass|srl6.bmp};
;Name: SRL\MAP7; Description: {code:CompHelper|Train|srl7.bmp};
Name: FR; Description: {code:CompHelper|От Froosh}; Types: fr; Flags: exclusive;
Name: FR\MAP1; Description: {code:CompHelper|Cobblestone|froosh1.bmp};
Name: FR\MAP2; Description: {code:CompHelper|Dust II|froosh2.bmp};
Name: FR\MAP3; Description: {code:CompHelper|Inferno|froosh3.bmp};
Name: FR\MAP4; Description: {code:CompHelper|Mirage|froosh4.bmp};
Name: FR\MAP5; Description: {code:CompHelper|Overpass|froosh5.bmp};
Name: LSC; Description: {code:CompHelper|От LoneySilverCity}; Types: lsc; Flags: exclusive;
Name: LSC\MAP1; Description: {code:CompHelper|Aztec|lsc1.bmp};
Name: LSC\MAP2; Description: {code:CompHelper|Cobblestone|lsc2.bmp};
Name: LSC\MAP3; Description: {code:CompHelper|Dust II|lsc3.bmp};
Name: LSC\MAP4; Description: {code:CompHelper|Inferno|lsc4.bmp};
Name: LSC\MAP5; Description: {code:CompHelper|Nuke|lsc5.bmp};
Name: LSC\MAP6; Description: {code:CompHelper|Overpass|lsc6.bmp};
Name: LSC\MAP7; Description: {code:CompHelper|Train|lsc7.bmp};
var
ImagePanel: TPanel;
ComponentsInfoImage: TBitmapImage;
ComponentHelper: TStringList;
function CompHelper(Param: string): string;
var
Image: TBitmap;
Index: Integer;
begin
Result := '';
with TStringList.Create do
try
StringChangeEx(Param, '|', #13#10, True);
Text := Param;
if Count = 0 then Exit;
if Count > 0 then
Index := ComponentHelper.Add(Strings[0]);
if Count > 1 then
begin
if not FileExists(ExpandConstant('{tmp}\') + Strings[1]) then
ExtractTemporaryFile(Strings[1]);
Image := TBitmap.Create;
Image.LoadFromFile(ExpandConstant('{tmp}\') + Strings[1]);
ComponentHelper.Objects[Index] := Image;
end;
Result := ComponentHelper[Index];
finally
Free;
end;
end;
procedure ComponentsListClickCheck(Sender: TObject);
begin
if not Assigned(Sender) or (TNewCheckListBox(Sender).ItemIndex = -1) then Exit;
ComponentsInfoImage.Bitmap.Assign(TBitmap(ComponentHelper.Objects[TNewCheckListBox(Sender).ItemIndex]));
end;
function InitializeSetup(): Boolean;
begin
Result := True;
ComponentHelper := TStringList.Create;
ComponentHelper.Duplicates := dupIgnore;
end;
var
CheckLicense: TCheckBox;
procedure LicenseOnClick(Sender: TObject);
begin
if (CheckLicense.Checked) = True then
begin
WizardForm.LicenseAcceptedRadio.Checked := True;
end else
begin
WizardForm.LicenseNotAcceptedRadio.Checked := True;
end;
end;
procedure InitializeWizard();
var
i: Integer;
begin
WizardForm.TypesCombo.Visible := False;
WizardForm.ComponentsList.Visible := True;
WizardForm.ComponentsList.Height := ScaleX(209);
WizardForm.ComponentsList.Top := ScaleX(15);
WizardForm.ComponentsList.Width := ScaleX(175);
for i := 0 to WizardForm.ComponentsList.Items.Count - 1 do
if not WizardForm.ComponentsList.ItemEnabled[i] then
WizardForm.ComponentsList.ItemSubItem[i] := '';
WizardForm.ComponentsDiskSpaceLabel.Visible := True;
WizardForm.LicenseNotAcceptedRadio.Hide;
WizardForm.LicenseAcceptedRadio.Hide;
WizardForm.LicenseMemo.Height := ScaleY(175);
CheckLicense:= TCheckBox.Create(WizardForm);
CheckLicense.Left:= ScaleX(0);
CheckLicense.Top:= ScaleY(216);
CheckLicense.Caption:= WizardForm.LicenseAcceptedRadio.Caption;
CheckLicense.Width:= ScaleX(417);
CheckLicense.OnClick:= @LicenseOnClick;
CheckLicense.Parent:= WizardForm.LicensePage;
ImagePanel := TPanel.Create(WizardForm);
ImagePanel.Parent := WizardForm.SelectComponentsPage;
ImagePanel.Caption := '';
ImagePanel.Top := ScaleX(15);
ImagePanel.Left := ScaleX(180);
ImagePanel.Width := ScaleX(210);
ImagePanel.Height := ScaleX(210);
ImagePanel.BevelInner := bvRaised;
ImagePanel.BevelOuter := bvLowered;
WizardForm.ComponentsList.OnClickCheck:= @ComponentsListClickCheck;
ComponentsInfoImage:= TBitmapImage.Create(WizardForm);
ComponentsInfoImage.Parent:= ImagePanel;
ComponentsInfoImage.Top:= ScaleY(2);
ComponentsInfoImage.Left:= ScaleX(2);
ComponentsInfoImage.Width:= ScaleX(205);
ComponentsInfoImage.Height:= ScaleY(205);
ComponentsInfoImage.Stretch:= True;
ComponentsInfoImage.BringToFront;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
case CurPageID of
wpSelectComponents: ComponentsListClickCheck(nil);
end;
end;
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result := True;
case CurPageID of
wpSelectDir:
if not FileExists(ExpandConstant('{app}\steam.exe')) then begin
MsgBox('Ошибка! Вы должны указать путь до папки Steam.', mbError, MB_OK);
Result := False;
end;
end;
end;
1.Можно ли убрать значок папки с текстом и переместить на это место текст с полем, которые расположены ниже (см.скрин.1);
2.Можно ли установить изображение, не важно в каком формате(см.скрин.1);
3.Можно ли поставить текст, допустим: разработано кем-то и т.д.(см.скрин.1);
https://www.upload.ee/files/8281204/BMP.rar.html
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.