Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 5]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 5]

Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1265
Благодарности: 1025


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: El Sanchez
Дата: 16-02-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:
Inno Setup [все вопросы] часть 1
Inno Setup [все вопросы] часть 2
Скрипты Inno Setup. Помощь и советы [часть 3]
Скрипты Inno Setup. Помощь и советы [часть 4]

Отправлено: 03:49, 21-05-2012

 

Аватара для alert30

Ветеран


Сообщения: 1088
Благодарности: 162

Профиль | Отправить PM | Цитировать


Цитата Spell1999:
и чё это за чуш »
Не чушь, этот архиватор сильнее жмет.
Цитата Spell1999:
я немогу понтять чем жмут. например maxpayne 3 с 25 гигов сжали до 12 это как? »
Потому что там было много видео и музыки в папке этой игры.
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:00, 09-08-2012 | #571



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 18
Благодарности: 0

Профиль | Отправить PM | Цитировать


несопрю она висит вся на музыке и видео. но сёравно фриарк нежмёт так.

Отправлено: 11:03, 09-08-2012 | #572


Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Отправить PM | Цитировать


Spell1999, скорее всего удалили ненужное. Вот еще для сжатия - http://www.youtube.com/watch?v=CQcJJ_FyUnE

Отправлено: 11:03, 09-08-2012 | #573


Новый участник


Сообщения: 18
Благодарности: 0

Профиль | Отправить PM | Цитировать


Batistas, я тоже так думал сначала. но потом скачал установил она тянет почти на 25 гигов как лицензия, там ничё не вырезано. ща гляну видос попробую.

Отправлено: 11:07, 09-08-2012 | #574


Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1265
Благодарности: 1025

Профиль | Отправить PM | Цитировать


Цитата Batistas:
Поставил ansi-версию, ошибки все равно вылетают. »
Batistas, попробуйте вместо объекта Microsoft.XMLDOM подставить одно из значений: MSXML2.DOMDocument, MSXML2.DOMDocument.3.0, MSXML2.DOMDocument.4.0, MSXML2.DOMDocument.6.0.
Если будет ругань, то оформите ReadDCPlusPlus вот так:
читать дальше »

Код: Выделить весь код
function ReadDCPlusPlus(Filename, Node, Default: String): String;
var
    objXMLDoc: Variant;
begin
    Result := Default;
    if not FileExists(Filename) then Exit;
    try
        objXMLDoc := CreateOleObject('Microsoft.XMLDOM'); //или другой объект
        objXMLDoc.load(Filename);
        objXMLDoc.async := False;
        if objXMLDoc.parseError.errorCode <> 0 then Exit;
        Result := objXMLDoc.selectSingleNode(Node).text;
    except
        ShowExceptionMessage;
        Exit;
    end;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:31, 09-08-2012 | #575


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


Spell1999,
по вопросам сжатия читай тут http://forum.ru-board.com/topic.cgi?...=30239&start=0
тут http://forum.ru-board.com/topic.cgi?forum=5&topic=32025
большинство (даже почти все) из так называемых "репаков" сжимаются на основе средств сжатия и преобразования
файлов поддерживаемых библиотекой IsDone (распаковка)
качай его отсюда http://176.9.1.113:52080/showthread.php?t=34&page=49
читай к нему справку и пользуйся, если хочешь (справка должна идти в комплекте, то бишь в архиве)
эта тема предназначена для написания/помощи в написании кода на основе языка Object Pascal
используемом в инно и всего того что стоит в справке по инно - стандартные средства

Последний раз редактировалось Johny777, 09-08-2012 в 11:55.

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:44, 09-08-2012 | #576


Аватара для Ivan_009

Ветеран


Сообщения: 608
Благодарности: 58

Профиль | Цитировать


Покажите пример наложение текстур на кнопки с двум состояниям искал везде 4 или 3 состояния...

Отправлено: 14:10, 09-08-2012 | #577


Новый участник


Сообщения: 18
Благодарности: 0

Профиль | Отправить PM | Цитировать


Johny777, спс до меня допёрла кажись)))

Отправлено: 15:15, 09-08-2012 | #578


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


Ivan_009,
текстурирование кнопок
2 состояния - обычное и при нажатии
код:
читать дальше »
Код: Выделить весь код
#define ButtonWidth "80" ; ширина кнопки
#define ButtonHeight "25" ; высота

#define ButtonFontColor "clWhite" ;цвет шрифта кнопок

#define TextureWidth "160" ;ширина картинки-текстуры
#define TextureHeight "25" ;высота


[Setup]
AppName=Test
AppVerName=Test
DefaultDirName={pf}\Test
OutputDir=.

;Изображение размером 160х25 (можете поменять в купе с настройками в препроцессоре, в шапке)
;левая половина - обычное состояние, правая - при нажатии
BitmapResource=button:button.bmp


[code]
var
  ButtonPanel: array [0..4] of TPanel;
  ButtonImage: array [0..4] of TBitmapImage;
  ButtonLabel: array [0..4] of TLabel;

procedure ButtonLabelClick(Sender: TObject);
var
  Button: TButton;
begin
  with WizardForm do
  begin
    case TLabel(Sender).Tag of
      0: Button := BackButton;
      1: Button := NextButton;
      2: Button := CancelButton;
      3: Button := DirBrowseButton;
      4: Button := GroupBrowseButton;
    else exit
    end;
  end;
  Button.OnClick(Button);
end;

procedure ButtonLabelMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  ButtonImage[TLabel(Sender).Tag].Left:= -ScaleX({#ButtonWidth});
end;

procedure ButtonLabelMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  ButtonImage[TLabel(Sender).Tag].Left := ScaleX(0);
end;

procedure LoadButtonImage(AButton: TButton; AButtonIndex: integer);
var
  Image: TBitmapImage;
  Panel: TPanel;
  Labl: TLabel;
begin
  Panel:=TPanel.Create(WizardForm)
  with Panel do
  begin
    SetBounds(AButton.Left,AButton.Top,AButton.Width,AButton.Height);
    Tag := AButtonIndex;
    Parent := AButton.Parent;
  end;

  ButtonPanel[AButtonIndex] := Panel;

  Image:=TBitmapImage.Create(WizardForm)
  with Image do
  begin
    Width := ScaleX({#TextureWidth});
    Height := ScaleY({#TextureHeight});
    Enabled := False;
    Bitmap.LoadFromResourceName(HInstance, '_IS_BUTTON');
    Parent := Panel;
  end;

  ButtonImage[AButtonIndex]:=Image;

  with TLabel.Create(WizardForm) do
  begin
    Tag := AButtonIndex;
    Parent := Panel;
    Width := Panel.Width;
    Height := Panel.Height;
    Transparent := True;
    OnClick := @ButtonLabelClick;
    OnDblClick := @ButtonLabelClick;
    OnMouseDown := @ButtonLabelMouseDown;
    OnMouseUp := @ButtonLabelMouseUp;
  end;

  Labl:=TLabel.Create(WizardForm)
  with Labl do
  begin
    Autosize := True;
    Alignment := taCenter;
    Tag := AButtonIndex;
    Transparent := True;            
    Font.Color := {#ButtonFontColor};
    Caption := AButton.Caption;
    OnClick := @ButtonLabelClick;
    OnMouseDown := @ButtonLabelMouseDown;
    OnMouseUp := @ButtonLabelMouseUp;
    OnDblClick := @ButtonLabelClick;
    Parent := Panel;
  end;
  
  ButtonLabel[AButtonIndex]:= Labl;
end;

procedure UpdateButton(AButton: TButton;AButtonIndex: integer);
begin
  ButtonPanel[AButtonIndex].Visible := AButton.Visible;
  with ButtonLabel[AButtonIndex] do
  begin
    Caption := AButton.Caption;
    Left := ButtonPanel[AButtonIndex].Width div 2 - ButtonLabel[AButtonIndex].Width div 2;
    Top := ButtonPanel[AButtonIndex].Height div 2 - ButtonLabel[AButtonIndex].Height div 2;
  end;
end;


procedure InitializeWizard();
begin
  with WizardForm do
  begin
    BackButton.Width:={#ButtonWidth};
    BackButton.Height:={#ButtonHeight};
    NextButton.Width:={#ButtonWidth};
    NextButton.Height:={#ButtonHeight};
    CancelButton.Width:={#ButtonWidth};
    CancelButton.Height:={#ButtonHeight};
    DirBrowseButton.Width:={#ButtonWidth};
    DirBrowseButton.Height:={#ButtonHeight};
    GroupBrowseButton.Width:={#ButtonWidth};
    GroupBrowseButton.Height:={#ButtonHeight};
    
    LoadButtonImage(BackButton,0);
    LoadButtonImage(NextButton,1);
    LoadButtonImage(CancelButton,2);
    LoadButtonImage(DirBrowseButton,3);
    LoadButtonImage(GroupBrowseButton,4);
  end;
end;

procedure CurPageChanged(CurPageID: Integer);  
begin
  UpdateButton(WizardForm.BackButton,0);
  UpdateButton(WizardForm.NextButton,1);
  UpdateButton(WizardForm.CancelButton,2);
  UpdateButton(WizardForm.DirBrowseButton,3);
  UpdateButton(WizardForm.GroupBrowseButton,4);
end;


текстура (положить рядом со скриптом) :

Последний раз редактировалось Johny777, 22-04-2013 в 16:15.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:40, 09-08-2012 | #579


Аватара для Ivan_009

Ветеран


Сообщения: 608
Благодарности: 58

Профиль | Цитировать


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

Последний раз редактировалось Ivan_009, 09-08-2012 в 20:55.


Отправлено: 18:54, 09-08-2012 | #580



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 5]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
Inno Setup tradeukraine Вебмастеру 3 13-06-2006 20:39




 
Переход