Jump to content
Korean Random

Создание инсталляторов для модпаков на базе Inno Setup


Recommended Posts

Всем привет , С новым годом 2015 , Так у меня такая проблема я хочу создать свой модпак , мне надо такая херня так как у анвея в начале запуска идёт картинка а потом запускается модпак , 2  з делать что б выбирались моды по одному , и что б удалить все старые моды , хто может помогите буду очень благодарен)

все тему прочитай и сделай:)

Link to comment
Short link
Share on other sites

Всем привет , нужна помощь , вот у меня такая хрень как зделать вот такую меню как у джовы вот фоткака но у него там ютуб и вк 

мой код с патча 9.2 вроде))

первый вариант в виде картинок

procedure LogoOnClick(Sender: TObject);
var ResCode: Integer;
begin
  ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode)
end;
var
  BitmapImage1: TBitmapImage;
procedure RedesignWizardForm2;
var
  i: integer;
  BtnPanel: TPanel;
  BtnImage: TBitmapImage;
begin
  ExtractTemporaryFile('первая ссылка.bmp')
  BtnPanel:=TPanel.Create(WizardForm)
with BtnPanel do begin
  Left:=0
  Top:=540
  Width:=120
  Height:=50
  Cursor:=crHand
  OnClick:=@logoOnClick
  Parent:=WizardForm
end;
  BtnImage:=TBitmapImage.Create(WizardForm)
with BtnImage do begin
  AutoSize:=True;
  Enabled:=False;
  Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\первая ссылка.bmp')
  Parent:=BtnPanel
  end;
end;
//////////////////////////
///////////////////////
procedure LogoOnClick1(Sender: TObject);
var
ResCode: Integer;
begin
  ShellExec('', '{#MyAppURL1}', '' , '', SW_SHOW, ewNoWait, ResCode)
end;
procedure RedesignWizardForm3;
var
  BtnPanel: TPanel;
  BtnImage: TBitmapImage;
begin
  ExtractTemporaryFile('вторая ссылка.bmp')
  BtnPanel:=TPanel.Create(WizardForm)
  with BtnPanel do
   begin
    Left:=130
    Top:=540
    Width:=120
    Height:=50
    Cursor:=crHand
    OnClick:=@logoOnClick1
    Parent:=WizardForm
  end;
  BtnImage:=TBitmapImage.Create(WizardForm)
with BtnImage do
begin
    AutoSize:=True;
    Enabled:=False;
    Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\вторая ссылка.bmp')
    Parent:=BtnPanel
  end;
end;

второй вариант в виде кнопок

var
group,clan,xvm,faq: TNewButton;
procedure groupOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'https://vk.com/dangclan', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure clanOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://ru.wargaming.net/clans/115831/', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure xvmOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://www.modxvm.com/', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)        
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure faqOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://goo.gl/u2MAB3', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)         
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure InitializeWizard9();
begin
    group:=TNewButton.Create(WizardForm)
    group.Parent := WizardForm;
    group.Left := ScaleX(178);
    group.Top := ScaleY(520);
    group.Width := ScaleX(75);
    group.Height := ScaleY(32);
    group.Caption := 'Вконтакте';
    group.Font.Height := -12;
    group.Font.Name := 'Arial Unicode MS';
    group.Font.Style := [fsItalic];
    group.ParentFont := False;
    group.Cursor:=crHand
    group.OnClick:=@groupOnClick
//""""""""""""""""""""""""""""""""""""""""""""""//
    clan:=TNewButton.Create(WizardForm)
    clan.Parent := WizardForm;
    clan.Left := ScaleX(258);
    clan.Top := ScaleY(520);
    clan.Width := ScaleX(75);
    clan.Height := ScaleY(32);
    clan.Caption := 'Наш клан';
    clan.Font.Height := -12;
    clan.Font.Name := 'Arial Unicode MS';
    clan.Font.Style := [fsItalic];
    clan.ParentFont := False;
    clan.Cursor:=crHand
    clan.OnClick:=@clanOnClick
//""""""""""""""""""""""""""""""""""""""""""""""//
    xvm:=TNewButton.Create(WizardForm)
    xvm.Parent := WizardForm.ReadyPage;
    xvm.Left := ScaleX(0);
    xvm.Top := ScaleY(435);
    xvm.Width := ScaleX(289);
    xvm.Height := ScaleY(22);
    xvm.Caption := 'Перейти на сайт XVM для активации статистики ';
    xvm.Font.Color := clWindowText;
    xvm.Font.Height := -12;
    xvm.Font.Name := 'Arial Unicode MS';
    xvm.Font.Style := [fsItalic];
    xvm.ParentFont := False;
    xvm.Cursor:=crHand
    xvm.OnClick:=@xvmOnClick
    //""""""""""""""""""""""""""""""""""""""""""""""//
    faq:=TNewButton.Create(WizardForm)
    faq.Parent := WizardForm;
    faq.Left := ScaleX(98);
    faq.Top := ScaleY(520);
    faq.Width := ScaleX(75);
    faq.Height := ScaleY(32);
    faq.Caption := 'F.A.Q.';
    faq.Font.Color := clWindowText;
    faq.Font.Height := -12;
    faq.Font.Name := 'Arial Unicode MS';
    faq.Font.Style := [fsItalic];
    faq.ParentFont := False;
    faq.Cursor:=crHand
    faq.OnClick:=@faqOnClick
end;

Link to comment
Short link
Share on other sites

мой код с патча 9.2 вроде))

первый вариант в виде картинок

procedure LogoOnClick(Sender: TObject);
var ResCode: Integer;
begin
  ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode)
end;
var
  BitmapImage1: TBitmapImage;
procedure RedesignWizardForm2;
var
  i: integer;
  BtnPanel: TPanel;
  BtnImage: TBitmapImage;
begin
  ExtractTemporaryFile('первая ссылка.bmp')
  BtnPanel:=TPanel.Create(WizardForm)
with BtnPanel do begin
  Left:=0
  Top:=540
  Width:=120
  Height:=50
  Cursor:=crHand
  OnClick:=@logoOnClick
  Parent:=WizardForm
end;
  BtnImage:=TBitmapImage.Create(WizardForm)
with BtnImage do begin
  AutoSize:=True;
  Enabled:=False;
  Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\первая ссылка.bmp')
  Parent:=BtnPanel
  end;
end;
//////////////////////////
///////////////////////
procedure LogoOnClick1(Sender: TObject);
var
ResCode: Integer;
begin
  ShellExec('', '{#MyAppURL1}', '' , '', SW_SHOW, ewNoWait, ResCode)
end;
procedure RedesignWizardForm3;
var
  BtnPanel: TPanel;
  BtnImage: TBitmapImage;
begin
  ExtractTemporaryFile('вторая ссылка.bmp')
  BtnPanel:=TPanel.Create(WizardForm)
  with BtnPanel do
   begin
    Left:=130
    Top:=540
    Width:=120
    Height:=50
    Cursor:=crHand
    OnClick:=@logoOnClick1
    Parent:=WizardForm
  end;
  BtnImage:=TBitmapImage.Create(WizardForm)
with BtnImage do
begin
    AutoSize:=True;
    Enabled:=False;
    Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\вторая ссылка.bmp')
    Parent:=BtnPanel
  end;
end;

второй вариант в виде кнопок

var
group,clan,xvm,faq: TNewButton;
procedure groupOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'https://vk.com/dangclan', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure clanOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://ru.wargaming.net/clans/115831/', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure xvmOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://www.modxvm.com/', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)        
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure faqOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://goo.gl/u2MAB3', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)         
end;
//""""""""""""""""""""""""""""""""""""""""""""""//
procedure InitializeWizard9();
begin
    group:=TNewButton.Create(WizardForm)
    group.Parent := WizardForm;
    group.Left := ScaleX(178);
    group.Top := ScaleY(520);
    group.Width := ScaleX(75);
    group.Height := ScaleY(32);
    group.Caption := 'Вконтакте';
    group.Font.Height := -12;
    group.Font.Name := 'Arial Unicode MS';
    group.Font.Style := [fsItalic];
    group.ParentFont := False;
    group.Cursor:=crHand
    group.OnClick:=@groupOnClick
//""""""""""""""""""""""""""""""""""""""""""""""//
    clan:=TNewButton.Create(WizardForm)
    clan.Parent := WizardForm;
    clan.Left := ScaleX(258);
    clan.Top := ScaleY(520);
    clan.Width := ScaleX(75);
    clan.Height := ScaleY(32);
    clan.Caption := 'Наш клан';
    clan.Font.Height := -12;
    clan.Font.Name := 'Arial Unicode MS';
    clan.Font.Style := [fsItalic];
    clan.ParentFont := False;
    clan.Cursor:=crHand
    clan.OnClick:=@clanOnClick
//""""""""""""""""""""""""""""""""""""""""""""""//
    xvm:=TNewButton.Create(WizardForm)
    xvm.Parent := WizardForm.ReadyPage;
    xvm.Left := ScaleX(0);
    xvm.Top := ScaleY(435);
    xvm.Width := ScaleX(289);
    xvm.Height := ScaleY(22);
    xvm.Caption := 'Перейти на сайт XVM для активации статистики ';
    xvm.Font.Color := clWindowText;
    xvm.Font.Height := -12;
    xvm.Font.Name := 'Arial Unicode MS';
    xvm.Font.Style := [fsItalic];
    xvm.ParentFont := False;
    xvm.Cursor:=crHand
    xvm.OnClick:=@xvmOnClick
    //""""""""""""""""""""""""""""""""""""""""""""""//
    faq:=TNewButton.Create(WizardForm)
    faq.Parent := WizardForm;
    faq.Left := ScaleX(98);
    faq.Top := ScaleY(520);
    faq.Width := ScaleX(75);
    faq.Height := ScaleY(32);
    faq.Caption := 'F.A.Q.';
    faq.Font.Color := clWindowText;
    faq.Font.Height := -12;
    faq.Font.Name := 'Arial Unicode MS';
    faq.Font.Style := [fsItalic];
    faq.ParentFont := False;
    faq.Cursor:=crHand
    faq.OnClick:=@faqOnClick
end;

Не получаеться получаеться только одна картинка а я пытаюсь две зделать 

Link to comment
Short link
Share on other sites

Здесь я многое узнал, не разобрался только в одном, это добавить еще один такой же компонентный лист с выбором модов при нажатии далее 04d7721d8b24.png если есть возможность выручите вот скрипт как сюда добавить












#define MyAppName         "Mod-Pack"                       ;Название инстоллятора

#define MyInfoVer         "2.2"                                     ;Версия инсталлятора

#define MyAppVer          "2.2"                                     ;Версия игры

#define Patch             "0.9.3"                                   ;версия патча (чтобы не менять после каждого патча числа в скрипте, можно использовать это)

#define MyAppPublisher    "GV"                                ;Имя компании или человека кто делал

#define MyAppURL          "http://yandex.ru/showthread.php?p=120444"             ;Ссылка для лого
#include "Components.iss"                                           ;Компаненты, они же моды

#include "Messages.iss"                                             ;Сообщение, надписи на кнопках и т.д.

#include "BackUpPage.iss"                                           ;Резерное копирование или удаление res_mods

#include "CustomMessages.iss"                                       ;Описание модов

#include "Music.iss"                                                ;Музыка в инсталляторе
[Setup]

AppName={#MyAppName}

AppVersion={#MyAppVer}

AppPublisher={#MyAppPublisher}
//====={ Ссылки }=====\\

AppPublisherURL={#MyAppURL}

AppSupportURL={#MyAppURL}

AppUpdatesURL={#MyAppURL}
//====={ Папка устанвки }=====\\

DefaultDirName={code:MyDirName}

AppendDefaultDirName=no

DirExistsWarning=no

CreateUninstallRegKey=no

Uninstallable=yes
//====={ Картинки }=====\\

SetupIconFile=Files\wot_ico.ico

WizardImageFile=Files\img1.bmp

WizardSmallImageFile=Files\Small2.bmp
//====={ Отключение строниц }=====\\

DisableProgramGroupPage=yes
//====={ Лицензия и Фак }=====\\

LicenseFile=licensia.rtf

InfoBeforeFile=faq.rtf
//====={ Сжатие сетапа }=====\\

InternalCompressLevel=max

Compression=lzma2/max
//--------------- ваши картинки ---------------\\

[Files]

Source: Files\logo.bmp; Flags: dontcopy noencryption noencryption

DestName: "WizardForm.BitmapImage1.bmp"; Source: "Files\img2.bmp"; Flags: dontcopy solidbreak


[code]

function MyDirName(S:String): String;

var

  InsPath: String;

  er: boolean;

  myFile:String;

begin

  Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда

  er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', InsPath);

  if er and (InsPath<>'') then //если ключ существует и там что-то записано

  begin

    Result := InsPath;

  end;

end;
 
procedure LogoOnClick(Sender: TObject);

var ResCode: Integer;

begin

  ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode)

end;

var

  BitmapImage1: TBitmapImage;

procedure RedesignWizardForm;

var

  i: integer;

  BtnPanel: TPanel;

  BtnImage: TBitmapImage;

begin

  ExtractTemporaryFile('logo.bmp')

  BtnPanel:=TPanel.Create(WizardForm)

with BtnPanel do begin

  Left:=20

  Top:=497

  Width:=62

  Height:=23

  Cursor:=crHand

  OnClick:=@logoOnClick

  Parent:=WizardForm

end;

  BtnImage:=TBitmapImage.Create(WizardForm)

with BtnImage do begin

  AutoSize:=True;

  Enabled:=False;

  Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\logo.bmp')

  Parent:=BtnPanel

  end;

{ BitmapImage1 }

BitmapImage1 := TBitmapImage.Create(WizardForm);

with BitmapImage1 do

begin

  Parent := WizardForm.SelectDirPage;

  Left := ScaleX(0);

  Top := ScaleY(115);

  Width := ScaleX(620);

  Height := ScaleY(260);

  ExtractTemporaryFile('WizardForm.BitmapImage1.bmp');

  Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardForm.BitmapImage1.bmp'));

  end;

end;
function WindowResize(): Boolean;

var

  HeightOffset, WidthOffset: Integer;

begin

  HeightOffset:=170;

  WidthOffset:=200;
  WizardForm.Height:=WizardForm.Height + HeightOffset;

  WizardForm.Width:=WizardForm.Width + WidthOffset;
  WizardForm.NextButton.Top:=WizardForm.NextButton.Top + HeightOffset;

  WizardForm.BackButton.Top:=WizardForm.BackButton.Top + HeightOffset;

  WizardForm.CancelButton.Top:=WizardForm.CancelButton.Top + HeightOffset;

  WizardForm.NextButton.Left:=WizardForm.NextButton.Left + WidthOffset;

  WizardForm.BackButton.Left:=WizardForm.BackButton.Left + WidthOffset;

  WizardForm.CancelButton.Left:=WizardForm.CancelButton.Left + WidthOffset;
  WizardForm.OuterNotebook.Height:=WizardForm.OuterNotebook.Height + HeightOffset;

  WizardForm.InnerNotebook.Height:=WizardForm.InnerNotebook.Height + HeightOffset;

  WizardForm.OuterNotebook.Width:=WizardForm.OuterNotebook.Width + WidthOffset;

  WizardForm.InnerNotebook.Width:=WizardForm.InnerNotebook.Width + WidthOffset;

  WizardForm.WizardSmallBitmapImage.Left:= WizardForm.WizardSmallBitmapImage.Left + WidthOffset;

  WizardForm.Bevel.Top:=WizardForm.Bevel.Top + HeightOffset;

  WizardForm.BeveledLabel.Top:=WizardForm.BeveledLabel.Top + HeightOffset;

  WizardForm.Bevel.Width:=WizardForm.Bevel.Width + WidthOffset;

  WizardForm.Bevel1.Width:=WizardForm.Bevel1.Width + WidthOffset;

  WizardForm.MainPanel.Width:=WizardForm.MainPanel.Width + WidthOffset;

  WizardForm.BeveledLabel.Width:=WizardForm.BeveledLabel.Width + WidthOffset;

  WizardForm.Center;
{ /// --- Раскомментировать при желании ---- ///

  WizardForm.WelcomeLabel1.Hide;

  WizardForm.WelcomeLabel2.Hide;

  WizardForm.FinishedLabel.Hide;

  WizardForm.FinishedHeadingLabel.Hide;

  WizardForm.WizardBitmapImage.Width:=600;

  WizardForm.WizardBitmapImage.Height:=400;

  WizardForm.WizardBitmapImage2.Width:=600;

  WizardForm.WizardBitmapImage2.Height:=400;

  WizardForm.PageNameLabel.Hide;

  WizardForm.PageDescriptionLabel.Hide;

  WizardForm.WizardSmallBitmapImage.Top:=0;

  WizardForm.WizardSmallBitmapImage.Left:=0;

  WizardForm.WizardSmallBitmapImage.Width:=WizardForm.Width;

  WizardForm.WizardSmallBitmapImage.Height:=58;

  /// --- Конец ---- ///

}

  WizardForm.WelcomeLabel1.Hide;

  WizardForm.WelcomeLabel2.Hide;

  WizardForm.WizardBitmapImage.Width:=697;

  WizardForm.WizardBitmapImage.Height:=483;
  WizardForm.FinishedHeadingLabel.Hide;

  WizardForm.FinishedLabel.Hide;

  WizardForm.YesRadio.Hide;

  WizardForm.NoRadio.Hide;

  WizardForm.WizardBitmapImage2.Width:=697;

  WizardForm.WizardBitmapImage2.Height:=483;
  WizardForm.PageNameLabel.Hide;

  WizardForm.PageDescriptionLabel.Hide;

  WizardForm.WizardSmallBitmapImage.Top:=0;

  WizardForm.WizardSmallBitmapImage.Left:=0;

  WizardForm.WizardSmallBitmapImage.Width:=697;

  WizardForm.WizardSmallBitmapImage.Height:=58;
  WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;

  WizardForm.WelcomeLabel1.Height:=WizardForm.WelcomeLabel1.Height + HeightOffset;

  WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;
  WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;

  WizardForm.WelcomeLabel2.Height:=WizardForm.WelcomeLabel2.Height + HeightOffset;

  WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;


  WizardForm.LicenseLabel1.Width:=WizardForm.LicenseLabel1.Width + WidthOffset;

  WizardForm.LicenseMemo.Height:=WizardForm.LicenseMemo.Height + HeightOffset;

  WizardForm.LicenseMemo.Width:=WizardForm.LicenseMemo.Width + WidthOffset;

  WizardForm.LicenseNotAcceptedRadio.Top:=WizardForm.LicenseNotAcceptedRadio.Top + HeightOffset;

  WizardForm.LicenseAcceptedRadio.Top:=WizardForm.LicenseAcceptedRadio.Top + HeightOffset;
  WizardForm.InfoBeforeClickLabel.Width:=WizardForm.InfoBeforeClickLabel.Width + WidthOffset;

  WizardForm.InfoBeforeMemo.Height:=WizardForm.InfoBeforeMemo.Height + HeightOffset;

  WizardForm.InfoBeforeMemo.Width:=WizardForm.InfoBeforeMemo.Width + WidthOffset;
  WizardForm.SelectDirLabel.Width:=WizardForm.SelectDirLabel.Width + WidthOffset;

  WizardForm.SelectDirBrowseLabel.Width:=WizardForm.SelectDirBrowseLabel.Width + WidthOffset;

  WizardForm.DiskSpaceLabel.Top:=WizardForm.DiskSpaceLabel.Top + HeightOffset;

  WizardForm.DirBrowseButton.Left:=WizardForm.DirBrowseButton.Left + HeightOffset;

  WizardForm.DirEdit.Width:=WizardForm.DirEdit.Width + HeightOffset;
  WizardForm.ComponentsDiskSpaceLabel.Top:=WizardForm.ComponentsDiskSpaceLabel.Top + HeightOffset;

  WizardForm.SelectComponentsLabel.Width:=WizardForm.SelectComponentsLabel.Width + WidthOffset;

  WizardForm.ComponentsList.Height:=WizardForm.ComponentsList.Height + HeightOffset;

  WizardForm.ComponentsList.Width:=WizardForm.ComponentsList.Width + WidthOffset;
  WizardForm.ReadyLabel.Width:=WizardForm.ReadyLabel.Width + WidthOffset;

  WizardForm.ReadyMemo.Height:=WizardForm.ReadyMemo.Height + HeightOffset;

  WizardForm.ReadyMemo.Width:=WizardForm.ReadyMemo.Width + WidthOffset;
  WizardForm.ProgressGauge.Width:=WizardForm.ProgressGauge.Width + HeightOffset;

  WizardForm.FilenameLabel.Width:=WizardForm.FilenameLabel.Width + HeightOffset;

  WizardForm.StatusLabel.Width:=WizardForm.StatusLabel.Width + HeightOffset;

end;
/// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- ///
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

  InitializeWizard1(); {из BackUpPage.iss}

  InitializeWizard2(); {из Music.iss}

  RedesignWizardForm;

  WindowResize();
begin

  WizardForm.SelectComponentsLabel.Hide;

  WizardForm.TypesCombo.Hide;

  WizardForm.ComponentsList.SetBounds(ScaleX(260), ScaleY(20), ScaleX(357), ScaleY(333));

  WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription;

  WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave;
  CompDescImgPanel := TPanel.Create(WizardForm);

  with CompDescImgPanel do

  begin

    Parent := WizardForm.SelectComponentsPage;

    SetBounds(ScaleX(0), ScaleY(20), ScaleX(253), ScaleY(203));  //рамка картинки

    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(0), ScaleY(230), ScaleX(253), ScaleY(123));  //Нижния рамка

    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');

  AddCompDescription(3, CustomMessage('CompDesc3'), 'CompDescImg3.bmp');

  AddCompDescription(4, CustomMessage('CompDesc4'), 'CompDescImg4.bmp');

  AddCompDescription(5, CustomMessage('CompDesc5'), 'CompDescImg5.bmp');

  AddCompDescription(6, CustomMessage('CompDesc6'), 'CompDescImg6.bmp');

  AddCompDescription(7, CustomMessage('CompDesc7'), 'CompDescImg7.bmp');

  AddCompDescription(8, CustomMessage('CompDesc8'), 'CompDescImg8.bmp');

  AddCompDescription(9, CustomMessage('CompDesc9'), 'CompDescImg9.bmp');

  AddCompDescription(10, CustomMessage('CompDesc10'), 'CompDescImg10.bmp');

  AddCompDescription(11, CustomMessage('CompDesc11'), 'CompDescImg11.bmp');

  AddCompDescription(12, CustomMessage('CompDesc12'), 'CompDescImg12.bmp');

  AddCompDescription(13, CustomMessage('CompDesc13'), 'CompDescImg13.bmp');

  AddCompDescription(14, CustomMessage('CompDesc14'), 'CompDescImg14.bmp');

  AddCompDescription(15, CustomMessage('CompDesc15'), 'CompDescImg15.bmp');

  AddCompDescription(16, CustomMessage('CompDesc16'), 'CompDescImg16.bmp');

  AddCompDescription(17, CustomMessage('CompDesc17'), 'CompDescImg17.bmp');

  AddCompDescription(18, CustomMessage('CompDesc18'), 'CompDescImg18.bmp');

  AddCompDescription(19, CustomMessage('CompDesc19'), 'CompDescImg19.bmp');

  AddCompDescription(20, CustomMessage('CompDesc20'), 'CompDescImg20.bmp');

  AddCompDescription(21, CustomMessage('CompDesc21'), 'CompDescImg21.bmp');

  AddCompDescription(22, CustomMessage('CompDesc22'), 'CompDescImg22.bmp');

  AddCompDescription(23, CustomMessage('CompDesc23'), 'CompDescImg23.bmp');

  AddCompDescription(24, CustomMessage('CompDesc24'), 'CompDescImg24.bmp');

  AddCompDescription(25, CustomMessage('CompDesc25'), 'CompDescImg25.bmp');

  AddCompDescription(26, CustomMessage('CompDesc26'), 'CompDescImg26.bmp');

  AddCompDescription(27, CustomMessage('CompDesc27'), 'CompDescImg27.bmp');

  AddCompDescription(28, CustomMessage('CompDesc28'), 'CompDescImg28.bmp');

  AddCompDescription(29, CustomMessage('CompDesc29'), 'CompDescImg29.bmp');

  AddCompDescription(30, CustomMessage('CompDesc30'), 'CompDescImg30.bmp');

  AddCompDescription(31, CustomMessage('CompDesc31'), 'CompDescImg31.bmp');

  AddCompDescription(32, CustomMessage('CompDesc32'), 'CompDescImg32.bmp');

  AddCompDescription(33, CustomMessage('CompDesc33'), 'CompDescImg33.bmp');

  AddCompDescription(34, CustomMessage('CompDesc34'), 'CompDescImg34.bmp');

  AddCompDescription(35, CustomMessage('CompDesc35'), 'CompDescImg35.bmp');

  AddCompDescription(36, CustomMessage('CompDesc36'), 'CompDescImg36.bmp');

  AddCompDescription(37, CustomMessage('CompDesc37'), 'CompDescImg37.bmp');

  AddCompDescription(38, CustomMessage('CompDesc38'), 'CompDescImg38.bmp');

  AddCompDescription(39, CustomMessage('CompDesc39'), 'CompDescImg39.bmp');

  AddCompDescription(40, CustomMessage('CompDesc40'), 'CompDescImg40.bmp');

  AddCompDescription(41, CustomMessage('CompDesc41'), 'CompDescImg41.bmp');

  AddCompDescription(42, CustomMessage('CompDesc42'), 'CompDescImg42.bmp');

  AddCompDescription(43, CustomMessage('CompDesc43'), 'CompDescImg43.bmp');

  AddCompDescription(44, CustomMessage('CompDesc44'), 'CompDescImg44.bmp');

  AddCompDescription(45, CustomMessage('CompDesc45'), 'CompDescImg45.bmp');

  AddCompDescription(46, CustomMessage('CompDesc46'), 'CompDescImg46.bmp');

  AddCompDescription(47, CustomMessage('CompDesc47'), 'CompDescImg47.bmp');

  AddCompDescription(48, CustomMessage('CompDesc48'), 'CompDescImg48.bmp');

  AddCompDescription(49, CustomMessage('CompDesc49'), 'CompDescImg49.bmp');

  AddCompDescription(50, CustomMessage('CompDesc50'), 'CompDescImg50.bmp');

  AddCompDescription(51, CustomMessage('CompDesc51'), 'CompDescImg51.bmp');

  end;

end;

 

Link to comment
Short link
Share on other sites

Здесь я многое узнал, не разобрался только в одном, это добавить еще один такой же компонентный лист с выбором модов при нажатии далее 04d7721d8b24.png если есть возможность выручите вот скрипт как сюда добавить












#define MyAppName         "Mod-Pack"                       ;Название инстоллятора

#define MyInfoVer         "2.2"                                     ;Версия инсталлятора

#define MyAppVer          "2.2"                                     ;Версия игры

#define Patch             "0.9.3"                                   ;версия патча (чтобы не менять после каждого патча числа в скрипте, можно использовать это)

#define MyAppPublisher    "GV"                                ;Имя компании или человека кто делал

#define MyAppURL          "http://yandex.ru/showthread.php?p=120444"             ;Ссылка для лого
#include "Components.iss"                                           ;Компаненты, они же моды

#include "Messages.iss"                                             ;Сообщение, надписи на кнопках и т.д.

#include "BackUpPage.iss"                                           ;Резерное копирование или удаление res_mods

#include "CustomMessages.iss"                                       ;Описание модов

#include "Music.iss"                                                ;Музыка в инсталляторе
[Setup]

AppName={#MyAppName}

AppVersion={#MyAppVer}

AppPublisher={#MyAppPublisher}
//====={ Ссылки }=====\\

AppPublisherURL={#MyAppURL}

AppSupportURL={#MyAppURL}

AppUpdatesURL={#MyAppURL}
//====={ Папка устанвки }=====\\

DefaultDirName={code:MyDirName}

AppendDefaultDirName=no

DirExistsWarning=no

CreateUninstallRegKey=no

Uninstallable=yes
//====={ Картинки }=====\\

SetupIconFile=Files\wot_ico.ico

WizardImageFile=Files\img1.bmp

WizardSmallImageFile=Files\Small2.bmp
//====={ Отключение строниц }=====\\

DisableProgramGroupPage=yes
//====={ Лицензия и Фак }=====\\

LicenseFile=licensia.rtf

InfoBeforeFile=faq.rtf
//====={ Сжатие сетапа }=====\\

InternalCompressLevel=max

Compression=lzma2/max
//--------------- ваши картинки ---------------\\

[Files]

Source: Files\logo.bmp; Flags: dontcopy noencryption noencryption

DestName: "WizardForm.BitmapImage1.bmp"; Source: "Files\img2.bmp"; Flags: dontcopy solidbreak


[code]

function MyDirName(S:String): String;

var

  InsPath: String;

  er: boolean;

  myFile:String;

begin

  Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда

  er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', InsPath);

  if er and (InsPath<>'') then //если ключ существует и там что-то записано

  begin

    Result := InsPath;

  end;

end;
 
procedure LogoOnClick(Sender: TObject);

var ResCode: Integer;

begin

  ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode)

end;

var

  BitmapImage1: TBitmapImage;

procedure RedesignWizardForm;

var

  i: integer;

  BtnPanel: TPanel;

  BtnImage: TBitmapImage;

begin

  ExtractTemporaryFile('logo.bmp')

  BtnPanel:=TPanel.Create(WizardForm)

with BtnPanel do begin

  Left:=20

  Top:=497

  Width:=62

  Height:=23

  Cursor:=crHand

  OnClick:=@logoOnClick

  Parent:=WizardForm

end;

  BtnImage:=TBitmapImage.Create(WizardForm)

with BtnImage do begin

  AutoSize:=True;

  Enabled:=False;

  Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\logo.bmp')

  Parent:=BtnPanel

  end;

{ BitmapImage1 }

BitmapImage1 := TBitmapImage.Create(WizardForm);

with BitmapImage1 do

begin

  Parent := WizardForm.SelectDirPage;

  Left := ScaleX(0);

  Top := ScaleY(115);

  Width := ScaleX(620);

  Height := ScaleY(260);

  ExtractTemporaryFile('WizardForm.BitmapImage1.bmp');

  Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardForm.BitmapImage1.bmp'));

  end;

end;
function WindowResize(): Boolean;

var

  HeightOffset, WidthOffset: Integer;

begin

  HeightOffset:=170;

  WidthOffset:=200;
  WizardForm.Height:=WizardForm.Height + HeightOffset;

  WizardForm.Width:=WizardForm.Width + WidthOffset;
  WizardForm.NextButton.Top:=WizardForm.NextButton.Top + HeightOffset;

  WizardForm.BackButton.Top:=WizardForm.BackButton.Top + HeightOffset;

  WizardForm.CancelButton.Top:=WizardForm.CancelButton.Top + HeightOffset;

  WizardForm.NextButton.Left:=WizardForm.NextButton.Left + WidthOffset;

  WizardForm.BackButton.Left:=WizardForm.BackButton.Left + WidthOffset;

  WizardForm.CancelButton.Left:=WizardForm.CancelButton.Left + WidthOffset;
  WizardForm.OuterNotebook.Height:=WizardForm.OuterNotebook.Height + HeightOffset;

  WizardForm.InnerNotebook.Height:=WizardForm.InnerNotebook.Height + HeightOffset;

  WizardForm.OuterNotebook.Width:=WizardForm.OuterNotebook.Width + WidthOffset;

  WizardForm.InnerNotebook.Width:=WizardForm.InnerNotebook.Width + WidthOffset;

  WizardForm.WizardSmallBitmapImage.Left:= WizardForm.WizardSmallBitmapImage.Left + WidthOffset;

  WizardForm.Bevel.Top:=WizardForm.Bevel.Top + HeightOffset;

  WizardForm.BeveledLabel.Top:=WizardForm.BeveledLabel.Top + HeightOffset;

  WizardForm.Bevel.Width:=WizardForm.Bevel.Width + WidthOffset;

  WizardForm.Bevel1.Width:=WizardForm.Bevel1.Width + WidthOffset;

  WizardForm.MainPanel.Width:=WizardForm.MainPanel.Width + WidthOffset;

  WizardForm.BeveledLabel.Width:=WizardForm.BeveledLabel.Width + WidthOffset;

  WizardForm.Center;
{ /// --- Раскомментировать при желании ---- ///

  WizardForm.WelcomeLabel1.Hide;

  WizardForm.WelcomeLabel2.Hide;

  WizardForm.FinishedLabel.Hide;

  WizardForm.FinishedHeadingLabel.Hide;

  WizardForm.WizardBitmapImage.Width:=600;

  WizardForm.WizardBitmapImage.Height:=400;

  WizardForm.WizardBitmapImage2.Width:=600;

  WizardForm.WizardBitmapImage2.Height:=400;

  WizardForm.PageNameLabel.Hide;

  WizardForm.PageDescriptionLabel.Hide;

  WizardForm.WizardSmallBitmapImage.Top:=0;

  WizardForm.WizardSmallBitmapImage.Left:=0;

  WizardForm.WizardSmallBitmapImage.Width:=WizardForm.Width;

  WizardForm.WizardSmallBitmapImage.Height:=58;

  /// --- Конец ---- ///

}

  WizardForm.WelcomeLabel1.Hide;

  WizardForm.WelcomeLabel2.Hide;

  WizardForm.WizardBitmapImage.Width:=697;

  WizardForm.WizardBitmapImage.Height:=483;
  WizardForm.FinishedHeadingLabel.Hide;

  WizardForm.FinishedLabel.Hide;

  WizardForm.YesRadio.Hide;

  WizardForm.NoRadio.Hide;

  WizardForm.WizardBitmapImage2.Width:=697;

  WizardForm.WizardBitmapImage2.Height:=483;
  WizardForm.PageNameLabel.Hide;

  WizardForm.PageDescriptionLabel.Hide;

  WizardForm.WizardSmallBitmapImage.Top:=0;

  WizardForm.WizardSmallBitmapImage.Left:=0;

  WizardForm.WizardSmallBitmapImage.Width:=697;

  WizardForm.WizardSmallBitmapImage.Height:=58;
  WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;

  WizardForm.WelcomeLabel1.Height:=WizardForm.WelcomeLabel1.Height + HeightOffset;

  WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;
  WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;

  WizardForm.WelcomeLabel2.Height:=WizardForm.WelcomeLabel2.Height + HeightOffset;

  WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;


  WizardForm.LicenseLabel1.Width:=WizardForm.LicenseLabel1.Width + WidthOffset;

  WizardForm.LicenseMemo.Height:=WizardForm.LicenseMemo.Height + HeightOffset;

  WizardForm.LicenseMemo.Width:=WizardForm.LicenseMemo.Width + WidthOffset;

  WizardForm.LicenseNotAcceptedRadio.Top:=WizardForm.LicenseNotAcceptedRadio.Top + HeightOffset;

  WizardForm.LicenseAcceptedRadio.Top:=WizardForm.LicenseAcceptedRadio.Top + HeightOffset;
  WizardForm.InfoBeforeClickLabel.Width:=WizardForm.InfoBeforeClickLabel.Width + WidthOffset;

  WizardForm.InfoBeforeMemo.Height:=WizardForm.InfoBeforeMemo.Height + HeightOffset;

  WizardForm.InfoBeforeMemo.Width:=WizardForm.InfoBeforeMemo.Width + WidthOffset;
  WizardForm.SelectDirLabel.Width:=WizardForm.SelectDirLabel.Width + WidthOffset;

  WizardForm.SelectDirBrowseLabel.Width:=WizardForm.SelectDirBrowseLabel.Width + WidthOffset;

  WizardForm.DiskSpaceLabel.Top:=WizardForm.DiskSpaceLabel.Top + HeightOffset;

  WizardForm.DirBrowseButton.Left:=WizardForm.DirBrowseButton.Left + HeightOffset;

  WizardForm.DirEdit.Width:=WizardForm.DirEdit.Width + HeightOffset;
  WizardForm.ComponentsDiskSpaceLabel.Top:=WizardForm.ComponentsDiskSpaceLabel.Top + HeightOffset;

  WizardForm.SelectComponentsLabel.Width:=WizardForm.SelectComponentsLabel.Width + WidthOffset;

  WizardForm.ComponentsList.Height:=WizardForm.ComponentsList.Height + HeightOffset;

  WizardForm.ComponentsList.Width:=WizardForm.ComponentsList.Width + WidthOffset;
  WizardForm.ReadyLabel.Width:=WizardForm.ReadyLabel.Width + WidthOffset;

  WizardForm.ReadyMemo.Height:=WizardForm.ReadyMemo.Height + HeightOffset;

  WizardForm.ReadyMemo.Width:=WizardForm.ReadyMemo.Width + WidthOffset;
  WizardForm.ProgressGauge.Width:=WizardForm.ProgressGauge.Width + HeightOffset;

  WizardForm.FilenameLabel.Width:=WizardForm.FilenameLabel.Width + HeightOffset;

  WizardForm.StatusLabel.Width:=WizardForm.StatusLabel.Width + HeightOffset;

end;
/// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- ///
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

  InitializeWizard1(); {из BackUpPage.iss}

  InitializeWizard2(); {из Music.iss}

  RedesignWizardForm;

  WindowResize();
begin

  WizardForm.SelectComponentsLabel.Hide;

  WizardForm.TypesCombo.Hide;

  WizardForm.ComponentsList.SetBounds(ScaleX(260), ScaleY(20), ScaleX(357), ScaleY(333));

  WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription;

  WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave;
  CompDescImgPanel := TPanel.Create(WizardForm);

  with CompDescImgPanel do

  begin

    Parent := WizardForm.SelectComponentsPage;

    SetBounds(ScaleX(0), ScaleY(20), ScaleX(253), ScaleY(203));  //рамка картинки

    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(0), ScaleY(230), ScaleX(253), ScaleY(123));  //Нижния рамка

    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');

  AddCompDescription(3, CustomMessage('CompDesc3'), 'CompDescImg3.bmp');

  AddCompDescription(4, CustomMessage('CompDesc4'), 'CompDescImg4.bmp');

  AddCompDescription(5, CustomMessage('CompDesc5'), 'CompDescImg5.bmp');

  AddCompDescription(6, CustomMessage('CompDesc6'), 'CompDescImg6.bmp');

  AddCompDescription(7, CustomMessage('CompDesc7'), 'CompDescImg7.bmp');

  AddCompDescription(8, CustomMessage('CompDesc8'), 'CompDescImg8.bmp');

  AddCompDescription(9, CustomMessage('CompDesc9'), 'CompDescImg9.bmp');

  AddCompDescription(10, CustomMessage('CompDesc10'), 'CompDescImg10.bmp');

  AddCompDescription(11, CustomMessage('CompDesc11'), 'CompDescImg11.bmp');

  AddCompDescription(12, CustomMessage('CompDesc12'), 'CompDescImg12.bmp');

  AddCompDescription(13, CustomMessage('CompDesc13'), 'CompDescImg13.bmp');

  AddCompDescription(14, CustomMessage('CompDesc14'), 'CompDescImg14.bmp');

  AddCompDescription(15, CustomMessage('CompDesc15'), 'CompDescImg15.bmp');

  AddCompDescription(16, CustomMessage('CompDesc16'), 'CompDescImg16.bmp');

  AddCompDescription(17, CustomMessage('CompDesc17'), 'CompDescImg17.bmp');

  AddCompDescription(18, CustomMessage('CompDesc18'), 'CompDescImg18.bmp');

  AddCompDescription(19, CustomMessage('CompDesc19'), 'CompDescImg19.bmp');

  AddCompDescription(20, CustomMessage('CompDesc20'), 'CompDescImg20.bmp');

  AddCompDescription(21, CustomMessage('CompDesc21'), 'CompDescImg21.bmp');

  AddCompDescription(22, CustomMessage('CompDesc22'), 'CompDescImg22.bmp');

  AddCompDescription(23, CustomMessage('CompDesc23'), 'CompDescImg23.bmp');

  AddCompDescription(24, CustomMessage('CompDesc24'), 'CompDescImg24.bmp');

  AddCompDescription(25, CustomMessage('CompDesc25'), 'CompDescImg25.bmp');

  AddCompDescription(26, CustomMessage('CompDesc26'), 'CompDescImg26.bmp');

  AddCompDescription(27, CustomMessage('CompDesc27'), 'CompDescImg27.bmp');

  AddCompDescription(28, CustomMessage('CompDesc28'), 'CompDescImg28.bmp');

  AddCompDescription(29, CustomMessage('CompDesc29'), 'CompDescImg29.bmp');

  AddCompDescription(30, CustomMessage('CompDesc30'), 'CompDescImg30.bmp');

  AddCompDescription(31, CustomMessage('CompDesc31'), 'CompDescImg31.bmp');

  AddCompDescription(32, CustomMessage('CompDesc32'), 'CompDescImg32.bmp');

  AddCompDescription(33, CustomMessage('CompDesc33'), 'CompDescImg33.bmp');

  AddCompDescription(34, CustomMessage('CompDesc34'), 'CompDescImg34.bmp');

  AddCompDescription(35, CustomMessage('CompDesc35'), 'CompDescImg35.bmp');

  AddCompDescription(36, CustomMessage('CompDesc36'), 'CompDescImg36.bmp');

  AddCompDescription(37, CustomMessage('CompDesc37'), 'CompDescImg37.bmp');

  AddCompDescription(38, CustomMessage('CompDesc38'), 'CompDescImg38.bmp');

  AddCompDescription(39, CustomMessage('CompDesc39'), 'CompDescImg39.bmp');

  AddCompDescription(40, CustomMessage('CompDesc40'), 'CompDescImg40.bmp');

  AddCompDescription(41, CustomMessage('CompDesc41'), 'CompDescImg41.bmp');

  AddCompDescription(42, CustomMessage('CompDesc42'), 'CompDescImg42.bmp');

  AddCompDescription(43, CustomMessage('CompDesc43'), 'CompDescImg43.bmp');

  AddCompDescription(44, CustomMessage('CompDesc44'), 'CompDescImg44.bmp');

  AddCompDescription(45, CustomMessage('CompDesc45'), 'CompDescImg45.bmp');

  AddCompDescription(46, CustomMessage('CompDesc46'), 'CompDescImg46.bmp');

  AddCompDescription(47, CustomMessage('CompDesc47'), 'CompDescImg47.bmp');

  AddCompDescription(48, CustomMessage('CompDesc48'), 'CompDescImg48.bmp');

  AddCompDescription(49, CustomMessage('CompDesc49'), 'CompDescImg49.bmp');

  AddCompDescription(50, CustomMessage('CompDesc50'), 'CompDescImg50.bmp');

  AddCompDescription(51, CustomMessage('CompDesc51'), 'CompDescImg51.bmp');

  end;

end;

выше полистай,есть пример

Link to comment
Short link
Share on other sites

Здесь я многое узнал, не разобрался только в одном, это добавить еще один такой же компонентный лист с выбором модов при нажатии далее 04d7721d8b24.png если есть возможность выручите вот скрипт как сюда добавить












#define MyAppName         "Mod-Pack"                       ;Название инстоллятора

#define MyInfoVer         "2.2"                                     ;Версия инсталлятора

#define MyAppVer          "2.2"                                     ;Версия игры

#define Patch             "0.9.3"                                   ;версия патча (чтобы не менять после каждого патча числа в скрипте, можно использовать это)

#define MyAppPublisher    "GV"                                ;Имя компании или человека кто делал

#define MyAppURL          "http://yandex.ru/showthread.php?p=120444"             ;Ссылка для лого
#include "Components.iss"                                           ;Компаненты, они же моды

#include "Messages.iss"                                             ;Сообщение, надписи на кнопках и т.д.

#include "BackUpPage.iss"                                           ;Резерное копирование или удаление res_mods

#include "CustomMessages.iss"                                       ;Описание модов

#include "Music.iss"                                                ;Музыка в инсталляторе
[Setup]

AppName={#MyAppName}

AppVersion={#MyAppVer}

AppPublisher={#MyAppPublisher}
//====={ Ссылки }=====\\

AppPublisherURL={#MyAppURL}

AppSupportURL={#MyAppURL}

AppUpdatesURL={#MyAppURL}
//====={ Папка устанвки }=====\\

DefaultDirName={code:MyDirName}

AppendDefaultDirName=no

DirExistsWarning=no

CreateUninstallRegKey=no

Uninstallable=yes
//====={ Картинки }=====\\

SetupIconFile=Files\wot_ico.ico

WizardImageFile=Files\img1.bmp

WizardSmallImageFile=Files\Small2.bmp
//====={ Отключение строниц }=====\\

DisableProgramGroupPage=yes
//====={ Лицензия и Фак }=====\\

LicenseFile=licensia.rtf

InfoBeforeFile=faq.rtf
//====={ Сжатие сетапа }=====\\

InternalCompressLevel=max

Compression=lzma2/max
//--------------- ваши картинки ---------------\\

[Files]

Source: Files\logo.bmp; Flags: dontcopy noencryption noencryption

DestName: "WizardForm.BitmapImage1.bmp"; Source: "Files\img2.bmp"; Flags: dontcopy solidbreak


[code]

function MyDirName(S:String): String;

var

  InsPath: String;

  er: boolean;

  myFile:String;

begin

  Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда

  er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', InsPath);

  if er and (InsPath<>'') then //если ключ существует и там что-то записано

  begin

    Result := InsPath;

  end;

end;
 
procedure LogoOnClick(Sender: TObject);

var ResCode: Integer;

begin

  ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode)

end;

var

  BitmapImage1: TBitmapImage;

procedure RedesignWizardForm;

var

  i: integer;

  BtnPanel: TPanel;

  BtnImage: TBitmapImage;

begin

  ExtractTemporaryFile('logo.bmp')

  BtnPanel:=TPanel.Create(WizardForm)

with BtnPanel do begin

  Left:=20

  Top:=497

  Width:=62

  Height:=23

  Cursor:=crHand

  OnClick:=@logoOnClick

  Parent:=WizardForm

end;

  BtnImage:=TBitmapImage.Create(WizardForm)

with BtnImage do begin

  AutoSize:=True;

  Enabled:=False;

  Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\logo.bmp')

  Parent:=BtnPanel

  end;

{ BitmapImage1 }

BitmapImage1 := TBitmapImage.Create(WizardForm);

with BitmapImage1 do

begin

  Parent := WizardForm.SelectDirPage;

  Left := ScaleX(0);

  Top := ScaleY(115);

  Width := ScaleX(620);

  Height := ScaleY(260);

  ExtractTemporaryFile('WizardForm.BitmapImage1.bmp');

  Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardForm.BitmapImage1.bmp'));

  end;

end;
function WindowResize(): Boolean;

var

  HeightOffset, WidthOffset: Integer;

begin

  HeightOffset:=170;

  WidthOffset:=200;
  WizardForm.Height:=WizardForm.Height + HeightOffset;

  WizardForm.Width:=WizardForm.Width + WidthOffset;
  WizardForm.NextButton.Top:=WizardForm.NextButton.Top + HeightOffset;

  WizardForm.BackButton.Top:=WizardForm.BackButton.Top + HeightOffset;

  WizardForm.CancelButton.Top:=WizardForm.CancelButton.Top + HeightOffset;

  WizardForm.NextButton.Left:=WizardForm.NextButton.Left + WidthOffset;

  WizardForm.BackButton.Left:=WizardForm.BackButton.Left + WidthOffset;

  WizardForm.CancelButton.Left:=WizardForm.CancelButton.Left + WidthOffset;
  WizardForm.OuterNotebook.Height:=WizardForm.OuterNotebook.Height + HeightOffset;

  WizardForm.InnerNotebook.Height:=WizardForm.InnerNotebook.Height + HeightOffset;

  WizardForm.OuterNotebook.Width:=WizardForm.OuterNotebook.Width + WidthOffset;

  WizardForm.InnerNotebook.Width:=WizardForm.InnerNotebook.Width + WidthOffset;

  WizardForm.WizardSmallBitmapImage.Left:= WizardForm.WizardSmallBitmapImage.Left + WidthOffset;

  WizardForm.Bevel.Top:=WizardForm.Bevel.Top + HeightOffset;

  WizardForm.BeveledLabel.Top:=WizardForm.BeveledLabel.Top + HeightOffset;

  WizardForm.Bevel.Width:=WizardForm.Bevel.Width + WidthOffset;

  WizardForm.Bevel1.Width:=WizardForm.Bevel1.Width + WidthOffset;

  WizardForm.MainPanel.Width:=WizardForm.MainPanel.Width + WidthOffset;

  WizardForm.BeveledLabel.Width:=WizardForm.BeveledLabel.Width + WidthOffset;

  WizardForm.Center;
{ /// --- Раскомментировать при желании ---- ///

  WizardForm.WelcomeLabel1.Hide;

  WizardForm.WelcomeLabel2.Hide;

  WizardForm.FinishedLabel.Hide;

  WizardForm.FinishedHeadingLabel.Hide;

  WizardForm.WizardBitmapImage.Width:=600;

  WizardForm.WizardBitmapImage.Height:=400;

  WizardForm.WizardBitmapImage2.Width:=600;

  WizardForm.WizardBitmapImage2.Height:=400;

  WizardForm.PageNameLabel.Hide;

  WizardForm.PageDescriptionLabel.Hide;

  WizardForm.WizardSmallBitmapImage.Top:=0;

  WizardForm.WizardSmallBitmapImage.Left:=0;

  WizardForm.WizardSmallBitmapImage.Width:=WizardForm.Width;

  WizardForm.WizardSmallBitmapImage.Height:=58;

  /// --- Конец ---- ///

}

  WizardForm.WelcomeLabel1.Hide;

  WizardForm.WelcomeLabel2.Hide;

  WizardForm.WizardBitmapImage.Width:=697;

  WizardForm.WizardBitmapImage.Height:=483;
  WizardForm.FinishedHeadingLabel.Hide;

  WizardForm.FinishedLabel.Hide;

  WizardForm.YesRadio.Hide;

  WizardForm.NoRadio.Hide;

  WizardForm.WizardBitmapImage2.Width:=697;

  WizardForm.WizardBitmapImage2.Height:=483;
  WizardForm.PageNameLabel.Hide;

  WizardForm.PageDescriptionLabel.Hide;

  WizardForm.WizardSmallBitmapImage.Top:=0;

  WizardForm.WizardSmallBitmapImage.Left:=0;

  WizardForm.WizardSmallBitmapImage.Width:=697;

  WizardForm.WizardSmallBitmapImage.Height:=58;
  WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;

  WizardForm.WelcomeLabel1.Height:=WizardForm.WelcomeLabel1.Height + HeightOffset;

  WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;
  WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;

  WizardForm.WelcomeLabel2.Height:=WizardForm.WelcomeLabel2.Height + HeightOffset;

  WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;


  WizardForm.LicenseLabel1.Width:=WizardForm.LicenseLabel1.Width + WidthOffset;

  WizardForm.LicenseMemo.Height:=WizardForm.LicenseMemo.Height + HeightOffset;

  WizardForm.LicenseMemo.Width:=WizardForm.LicenseMemo.Width + WidthOffset;

  WizardForm.LicenseNotAcceptedRadio.Top:=WizardForm.LicenseNotAcceptedRadio.Top + HeightOffset;

  WizardForm.LicenseAcceptedRadio.Top:=WizardForm.LicenseAcceptedRadio.Top + HeightOffset;
  WizardForm.InfoBeforeClickLabel.Width:=WizardForm.InfoBeforeClickLabel.Width + WidthOffset;

  WizardForm.InfoBeforeMemo.Height:=WizardForm.InfoBeforeMemo.Height + HeightOffset;

  WizardForm.InfoBeforeMemo.Width:=WizardForm.InfoBeforeMemo.Width + WidthOffset;
  WizardForm.SelectDirLabel.Width:=WizardForm.SelectDirLabel.Width + WidthOffset;

  WizardForm.SelectDirBrowseLabel.Width:=WizardForm.SelectDirBrowseLabel.Width + WidthOffset;

  WizardForm.DiskSpaceLabel.Top:=WizardForm.DiskSpaceLabel.Top + HeightOffset;

  WizardForm.DirBrowseButton.Left:=WizardForm.DirBrowseButton.Left + HeightOffset;

  WizardForm.DirEdit.Width:=WizardForm.DirEdit.Width + HeightOffset;
  WizardForm.ComponentsDiskSpaceLabel.Top:=WizardForm.ComponentsDiskSpaceLabel.Top + HeightOffset;

  WizardForm.SelectComponentsLabel.Width:=WizardForm.SelectComponentsLabel.Width + WidthOffset;

  WizardForm.ComponentsList.Height:=WizardForm.ComponentsList.Height + HeightOffset;

  WizardForm.ComponentsList.Width:=WizardForm.ComponentsList.Width + WidthOffset;
  WizardForm.ReadyLabel.Width:=WizardForm.ReadyLabel.Width + WidthOffset;

  WizardForm.ReadyMemo.Height:=WizardForm.ReadyMemo.Height + HeightOffset;

  WizardForm.ReadyMemo.Width:=WizardForm.ReadyMemo.Width + WidthOffset;
  WizardForm.ProgressGauge.Width:=WizardForm.ProgressGauge.Width + HeightOffset;

  WizardForm.FilenameLabel.Width:=WizardForm.FilenameLabel.Width + HeightOffset;

  WizardForm.StatusLabel.Width:=WizardForm.StatusLabel.Width + HeightOffset;

end;
/// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- ///
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

  InitializeWizard1(); {из BackUpPage.iss}

  InitializeWizard2(); {из Music.iss}

  RedesignWizardForm;

  WindowResize();
begin

  WizardForm.SelectComponentsLabel.Hide;

  WizardForm.TypesCombo.Hide;

  WizardForm.ComponentsList.SetBounds(ScaleX(260), ScaleY(20), ScaleX(357), ScaleY(333));

  WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription;

  WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave;
  CompDescImgPanel := TPanel.Create(WizardForm);

  with CompDescImgPanel do

  begin

    Parent := WizardForm.SelectComponentsPage;

    SetBounds(ScaleX(0), ScaleY(20), ScaleX(253), ScaleY(203));  //рамка картинки

    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(0), ScaleY(230), ScaleX(253), ScaleY(123));  //Нижния рамка

    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');

  AddCompDescription(3, CustomMessage('CompDesc3'), 'CompDescImg3.bmp');

  AddCompDescription(4, CustomMessage('CompDesc4'), 'CompDescImg4.bmp');

  AddCompDescription(5, CustomMessage('CompDesc5'), 'CompDescImg5.bmp');

  AddCompDescription(6, CustomMessage('CompDesc6'), 'CompDescImg6.bmp');

  AddCompDescription(7, CustomMessage('CompDesc7'), 'CompDescImg7.bmp');

  AddCompDescription(8, CustomMessage('CompDesc8'), 'CompDescImg8.bmp');

  AddCompDescription(9, CustomMessage('CompDesc9'), 'CompDescImg9.bmp');

  AddCompDescription(10, CustomMessage('CompDesc10'), 'CompDescImg10.bmp');

  AddCompDescription(11, CustomMessage('CompDesc11'), 'CompDescImg11.bmp');

  AddCompDescription(12, CustomMessage('CompDesc12'), 'CompDescImg12.bmp');

  AddCompDescription(13, CustomMessage('CompDesc13'), 'CompDescImg13.bmp');

  AddCompDescription(14, CustomMessage('CompDesc14'), 'CompDescImg14.bmp');

  AddCompDescription(15, CustomMessage('CompDesc15'), 'CompDescImg15.bmp');

  AddCompDescription(16, CustomMessage('CompDesc16'), 'CompDescImg16.bmp');

  AddCompDescription(17, CustomMessage('CompDesc17'), 'CompDescImg17.bmp');

  AddCompDescription(18, CustomMessage('CompDesc18'), 'CompDescImg18.bmp');

  AddCompDescription(19, CustomMessage('CompDesc19'), 'CompDescImg19.bmp');

  AddCompDescription(20, CustomMessage('CompDesc20'), 'CompDescImg20.bmp');

  AddCompDescription(21, CustomMessage('CompDesc21'), 'CompDescImg21.bmp');

  AddCompDescription(22, CustomMessage('CompDesc22'), 'CompDescImg22.bmp');

  AddCompDescription(23, CustomMessage('CompDesc23'), 'CompDescImg23.bmp');

  AddCompDescription(24, CustomMessage('CompDesc24'), 'CompDescImg24.bmp');

  AddCompDescription(25, CustomMessage('CompDesc25'), 'CompDescImg25.bmp');

  AddCompDescription(26, CustomMessage('CompDesc26'), 'CompDescImg26.bmp');

  AddCompDescription(27, CustomMessage('CompDesc27'), 'CompDescImg27.bmp');

  AddCompDescription(28, CustomMessage('CompDesc28'), 'CompDescImg28.bmp');

  AddCompDescription(29, CustomMessage('CompDesc29'), 'CompDescImg29.bmp');

  AddCompDescription(30, CustomMessage('CompDesc30'), 'CompDescImg30.bmp');

  AddCompDescription(31, CustomMessage('CompDesc31'), 'CompDescImg31.bmp');

  AddCompDescription(32, CustomMessage('CompDesc32'), 'CompDescImg32.bmp');

  AddCompDescription(33, CustomMessage('CompDesc33'), 'CompDescImg33.bmp');

  AddCompDescription(34, CustomMessage('CompDesc34'), 'CompDescImg34.bmp');

  AddCompDescription(35, CustomMessage('CompDesc35'), 'CompDescImg35.bmp');

  AddCompDescription(36, CustomMessage('CompDesc36'), 'CompDescImg36.bmp');

  AddCompDescription(37, CustomMessage('CompDesc37'), 'CompDescImg37.bmp');

  AddCompDescription(38, CustomMessage('CompDesc38'), 'CompDescImg38.bmp');

  AddCompDescription(39, CustomMessage('CompDesc39'), 'CompDescImg39.bmp');

  AddCompDescription(40, CustomMessage('CompDesc40'), 'CompDescImg40.bmp');

  AddCompDescription(41, CustomMessage('CompDesc41'), 'CompDescImg41.bmp');

  AddCompDescription(42, CustomMessage('CompDesc42'), 'CompDescImg42.bmp');

  AddCompDescription(43, CustomMessage('CompDesc43'), 'CompDescImg43.bmp');

  AddCompDescription(44, CustomMessage('CompDesc44'), 'CompDescImg44.bmp');

  AddCompDescription(45, CustomMessage('CompDesc45'), 'CompDescImg45.bmp');

  AddCompDescription(46, CustomMessage('CompDesc46'), 'CompDescImg46.bmp');

  AddCompDescription(47, CustomMessage('CompDesc47'), 'CompDescImg47.bmp');

  AddCompDescription(48, CustomMessage('CompDesc48'), 'CompDescImg48.bmp');

  AddCompDescription(49, CustomMessage('CompDesc49'), 'CompDescImg49.bmp');

  AddCompDescription(50, CustomMessage('CompDesc50'), 'CompDescImg50.bmp');

  AddCompDescription(51, CustomMessage('CompDesc51'), 'CompDescImg51.bmp');

  end;

end;

 

Дизайн, мягко говоря не очень.

Link to comment
Short link
Share on other sites

как в инно значки добавить?

Какие?

Увидел. Тут зависит от шрифта, не все могут поддерживаться анси-версией компилятора.

Edited by Kotyarko_O
Link to comment
Short link
Share on other sites

Не знаю, не пробовал.

Пуск > Все программы > Стандартные > Служебные (System Tools на Win8) > Таблица символов. Ищи там.

вот и смотрю 

У меня на Tahoma + Unicode всё норм.

перешел на Unicode и заработал

Edited by Dark_Knight_MiX
Link to comment
Short link
Share on other sites

В моем случае CustomListBox  чтоб добавить страницу куда  надо разместить в моем скрипте или привязать отдельный скрипт с параметрами новой страницы? Пожалуйста подскажите что-то не выходит ведь вы же спецы в этом, а я уже и справку пере прочитал и эту тему заново три раза перечитывал не как не выходит ошибку выдает, Сплеш получилось прикрутить анимацией в начале, а вот лист с выбором модов ни как не получается? Подскажите!!! Пожалуйста!!! Мастера.  

Link to comment
Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...