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

Ответить
 • Просмотры: 10
Аватара пользователя
Creator000

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение Creator000 »

Скрипты инсталляторов для игр от Krinkels Team




Изображение

Krinkels Team занимается написанием оформительских скриптов.

Ниже приведены скрипты и описания к ним





"Batman: Arkham City " v.0.1.8.0 (IsDone v.06f)Описание:

Скрипт посвящён одноименной игре от © Rocksteady Studios, Batman: Arkham City.



Особенности:Для более удобного использования, скрипт "Batman: Arkham City " был разделен на отдельные модули (папка Modules: botva2, botva2u, Header, IsDone, Messages, PB);В качестве модуля распаковки используется "IsDone v.06f" © Profrager, 2011;В "Batman: Arkham City " есть скрытое меню, по нажатии на которое вы активируете появление логотипа;В скрипт включена расширенная версия модуля о свободном месте на ЖД;Дизайн "Batman: Arkham City " достаточно гибко поддается изменениям и при желании и наличии базовых навыков работы в Photoshop вы сможете кардинально изменить стиль и дизайн вашего проекта;Для удобства использования "Batman: Arkham City ", в начале скрипта вынесено множество опций.Скриншоты:







Скачать
|
Зеркало




"Batman: Arkham City [II]" v.1.0Описание:

Это ещё один скрипт от нашей команды, посвящённый одноименной игре от © Rocksteady Studios, Batman: Arkham City.



Особенности:В "Batman: Arkham City [II]" объеденины страницы каталогов;В скрипт включена расширенная версия модуля о свободном месте на ЖД;Есть возможность задать каждой странице собственную фоновую картинку;Поддерживается текстурированние кнопок и чекбосков;В скрипт включено "isSlideShow" © ExpeditoR, 2010;Скриншоты:







Скачать




"Split Second" v.1.0.1 (IsDone v.0.6 Final)Описание:

Скрипт по одноименной игре. Присутствует вертикальная панель навигации по страницам инсталлятора.



Особенности:В "Split/Second" включена возможность использования скина для инсталлятора;Для более удобного использования, скрипт "Split/Second" был разделен на отдельные модули (папка Modules: botva, Header, IsDone, Messages, PB);В качестве модуля распаковки используется "IsDone v.0.6 Final" © Profrager, 2011;В качестве модуля по защите графики используется "b2p v.0.3.9.2" © VoLT, 2011;В скрипт включена расширенная версия модуля о свободном месте на ЖД.Скриншоты:







Скачать
|
Зеркало




"FIFA 12" v.1.01 (IsDone v.0.6 Final)Описание:

Скрипт по одноименной игре. Присутствует вертикальная панель навигации по страницам инсталлятора.



Особенности:Скрипт "FIFA 12" универсален и при желании его можно использовать для многих игр;В "FIFA 12" объеденины страницы каталогов, а так же Компонентов и Дополнительных задач;Для более удобного использования, скрипт "FIFA 12" был разделен на отдельные модули (папка Modules: Header, ISDoneHeader);В качестве модуля распаковки используется "IsDone v.0.6 Final" © Profrager, 2011;Скриншоты:







Скачать
|
Зеркало




"L.A. Noire" (IsDone v.0.6 Final)Описание:

Универсальный скрипт. Его можно легко настроить под любую игру.



Особенности:Для более удобного использования, скрипт "L.A. Noire" был разделен на отдельные модули (папка Modules).В качестве модуля распаковки используется "IsDone" © ProFrager (Ne0N) 2011.В качестве модуля для работы с панелью задач (В Windows Vista/7/8) используется "WinTB" © David.D.Rocco 2012.В качестве модуля для работы с графикой используется "botva2" © South 2011.В качестве модуля по защите графики используется "b2p" © VoLT 2011.Требуется расширенная [Enhanced] версия Inno Setup. -
http://restools.hanzify.org/
Проверка необходимого места на жёстком диске.Для удобства использования, в начале скрипта вынесено множество опций.Включён полный набор psd-исходников (папка PSD_source);Деинсталлятор выполнен в стиле инсталлятора.Ну и многое другоеСкриншоты:









Ссылка
|
Ссылка
Аватара пользователя
LinkOFF

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение LinkOFF »

Здравствуйте. Как сделать чтоб файл распаковывался в C:\Users\имя пользователя\AppData\Local\ ?. Я ставлю {userappdata}, но он распаковывает в C:\Users\имя пользователя\AppData\Roaming\ . Пробовал еще {userprofile}, но с ним вообще ошибку выдает.
Аватара пользователя
YURSHAT

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение YURSHAT »

Raf-9600, писал так, но при установке выдает ошибку, что не может прописать по такому пути Изображение
Аватара пользователя
Gnom_aka_Lexander

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение Gnom_aka_Lexander »

Поделитесь пожалуйста алгоритмом сравнения нужной версии файла 50.6 через GetVersionNumbers(FilePath, VersionMSFile, VersionLSFile);

Причем VersionMSFile деятичный, а VersionLSFile - шестандцатеричный (т.е. msgbox показывает 50 327680 соответственно)



Заранее спасибо!
Аватара пользователя
El Sanchez

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение El Sanchez »

Помогите пожалуйста убрать страницы "Меню пуск" и "Компоненты" правильно. Как не убираю, вылазит рантайм. Буду очень благодарен



Скрипт:
http://clck.ru/d/zxAyJVzi19yFX
Аватара пользователя
Creator000

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение Creator000 »

тогда такой вопрос. в установщике 3 компонента. 1 это программа. остальные 2 скины и темы. как последние 2 компонентов просто скопировать из установщика в папку назначения?
Аватара пользователя
Ivan_009

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение Ivan_009 »

При использовании ISVideo как сделать так чтобы видео отображалось только на странице установки а на финишной закрывалось...Зараннее спасибо... Изображение
Аватара пользователя
Johny777

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение Johny777 »

Цитата Johny777:



в этом нет ничего неправильного?
Скрипты Inno Setup. Помощь и советы [часть 5]




всё правильно


Цитата Johny777:



и вообще записывать через case правильнее (с точки зрения оптимизации)?
Скрипты Inno Setup. Помощь и советы [часть 5]




Вопрос поставлен не верно, писать через case... или через if..., это скорее всего привычка написания, ну или кому как легче читать код. Конечно это только можно отнести только если использовать только одну проверку т.е. if ... then ... else, если таких проверок более двух, то удобнее на мой взгляд через case...




Цитата GoshaPolo:



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




HKCU\Software\...




Цитата R.i.m.s.k.y.:



Поделитесь пожалуйста алгоритмом сравнения нужной версии файла 50.6 через GetVersionNumbers
Скрипты Inno Setup. Помощь и советы [часть 5]





Пример






Код:

Код: Выделить всё

[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=.
Compression=lzma2/ultra64
InternalCompressLevel=ultra64
SolidCompression=yes
[Languages]
Name: ru; MessagesFile: compiler:Languages\Russian.isl
[Code]
function InitializeSetup(): Boolean;
var
  VersionMS, VersionLS: Cardinal;
begin
  if GetVersionNumbers(ExpandConstant('{sys}\shell32.dll'), VersionMS, VersionLS) then
    MsgBox(IntToStr(VersionMS shr 16) + '.' +
           IntToStr(VersionMS and $FFFF) + '.' +
           IntToStr(VersionLS shr 16) + '.' +
           IntToStr(VersionLS and $FFFF),
           mbInformation, MB_OK);
end;
Аватара пользователя
El Sanchez

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение El Sanchez »

Цитата Serega:



это скорее всего привычка написания, ну или кому как легче читать код.
Скрипты Inno Setup. Помощь и советы [часть 5]




Внесу свою лепту, так сказать Изображение

Через case удобно и оптимально проверять сранение двух переменных, когда:

1) одну определенную переменную нужно сравнить с несколькими другими, и в зависимости от того, какой из других она равна - совершить соответствующее действие

2) когда одну переменную нужно сравнить с несколькими другими и совершить в нескольких случаях одно и тоже действие.

В обоих этих случаях плюсы ощутимы - начиная от читаемости кода, заканчивая его оптимальностью. но в плане оптимальности, нужно помнить - case of работает до первого положительного ответа. как только получен ответ - да, выполнение структуры прерывается, и если это недопустимо, то тут без вариантов - if...then...else...
Аватара пользователя
Serkap

Re: Скрипты Inno Setup. Помощь и советы [часть 5]

Сообщение Serkap »

Serkap Forever & Курский Город Друзей - скрипт писался для чата Bimoid



Для чего его писал я, у меня есть большая локальная сеть которая состоит из несколько подсетей, у каждой подсети есть свой шлюз, а у меня 7 под сетей (7 шлюзов) и также есть доступ через интернет.

Один сервер обрабатывает эти 7 шлюзов и 1 подключение через интернет! На этом сервере стоит сервер чата.



Пользователь запускает этот инсталлятар, инсталлятар определяет автоматически шлюз, пользователь тока указывает свой логин, после этого запись этих данных происходит в 2 INI файла автоматически.

После завершения установки, чат автоматически логинится и запускается с предустановленным профилем. Это хорошо помагает для сис админов в особенности у кого поднят Домен.

не надо бегать, настраивать для каждого пользователя профиль и т.д.!!!! достаточно запустить и указать тока логин зарегистрированого пользователя!!!

awatch.exe - для определение IP адреса или Шлюза!





Код:

Код: Выделить всё

#define MyAppName "Чат КГД"
#define MyAppVersion "05.2012"
#define MyAppPublisher "Курский Город Друзей"
#define MyAppURL "http://www.kursk-gd.ru/"
#define MyAppExeName "Bimoid.exe"
[Setup]
; Serkap Forever & Курский Город Друзей - скрипт писался для чата Bimoid
; Для чего его писал я,  у меня есть большая локальная сеть которая состоит из несколько подсетей, у каждой подсети есть свой шлюз, а у меня 7 под сетей (7 шлюзов) и также есть доступ через интернет.
; Один сервер  обрабатывает эти 7 шлюзов и 1 подключение через интернет! На этом сервере стоит сервер чата.
; Пользователь запускает этот инсталлятар, инсталлятар определяет автоматически шлюз, пользователь тока указывает свой логин, после этого запись этих данных происходит в 2 INI файла автоматически. 
; После завершения установки, чат автоматически логинится и запускается с предустановленным профилем. Это хорошо помагает для сис админов в особенности у кого поднят Домен.
; не надо бегать, настраивать для каждого пользователя профиль и т.д.!!!! достаточно запустить и указать тока логин зарегистрированого пользователя!!!
; awatch.exe - для определение IP адреса или Шлюза!
AppName={#MyAppName}
AppVersion={#MyAppVersion}
AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DisableDirPage=yes
DefaultGroupName={#MyAppName}
DisableProgramGroupPage=yes
OutputBaseFilename=chat katk
Compression=lzma
SolidCompression=yes
[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
[Files] 
Source: "awatch.exe"; Flags: dontcopy noencryption nocompression
Source: "C:\111\чат\Bimoid.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\111\чат\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
[INI] 
Filename: "{app}\Bimoid.ini"; Section: "Main"; Flags: uninsdeletesection 
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "CurLang"; String: "Russian.oln";
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "CurSkin"; String: "SnowySky.osk";
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "CurUser"; String: "{code:GetUser|Names}";
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "CurServer"; String: "{code:MyConst}";
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "DefaultServer"; String: "{code:MyConst}";
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "Port"; String: "7023";
Filename: "{app}\Bimoid.ini"; Section: "Main"; Key: "TranspResVer"; String: "0";
Filename: "{app}\Users\User0001\ObimpUser.ini"; Section: "User"; Flags: uninsdeletesection; 
Filename: "{app}\Users\User0001\ObimpUser.ini"; Section: "User"; Key: "Username"; String: "{code:GetUser|Names}";
Filename: "{app}\Users\User0001\ObimpUser.ini"; Section: "User"; Key: "Server"; String: "{code:MyConst}";
[C*o*de] 
var 
 Page: TInputOptionWizardPage; 
 UserPage: TInputQueryWizardPage;
 ip : string; 
Procedure GetIPAdress();
var S: TArrayOfString; i,res : Integer; st : string;
begin
  ExtractTemporaryFile('awatch.exe');
  Exec(ExpandConstant('{tmp}\awatch.exe'), ' /stab tab1.txt 1 ',ExpandConstant('{tmp}'),SW_HIDE,ewWaitUntilTerminated,res);
  LoadStringsFromFile(ExpandConstant('{tmp}\tab1.txt'), S); 
  for i:= 0 to GetArrayLength(S)-1 do begin
    if (Pos(AnsiUpperCase('Default Gateway'), AnsiUpperCase(S[i])) > 0) then begin
      st:=S[i];
      break;
    end;
  end;
  StringChangeEx(st, 'Default Gateway', '', True);
  st:=TrimLeft(st);
  st:=copy(st,0,Length(st)-pos('(',st)-1);
  StringChangeEx(st, '(', '', True);
  st:=TrimRight(st);
  ip:=st;
end; 
function Checked: Boolean; 
begin 
  Result := Page.Values[0]; 
end; 
function Checked2: Boolean; 
begin 
  Result := Page.Values[1];  
end; 
function Checked3: Boolean;
begin
  if (Page.Values[1]) then
    // компонент 'helpfiles' выбран
    MsgBox('ok', mbInformation, MB_OK);
end;  
function MyConst(Param: String): String; 
begin 
if Checked then  
GetIPAdress;   
Result := ip; 
if (Checked2) then ;     
end;
procedure InitializeWizard(); 
begin 
   UserPage := CreateInputQueryPage(wpWelcome,
    'Информация для входа!', 'Ваш логин:',
    'Укажите логин, который Вам выдал админисратор.');
  UserPage.Add('Name:', False);
  UserPage.Values[0] := GetPreviousData('Name', GetPreviousData('Name', ExpandConstant('{sysuserinfoname}')));
  ip := 'icq.kursk-gd.ru'; // тут указываете свой сервер подключения через интернет
  Page := CreateInputOptionPage(wpSelectTasks,'New Page', 'New Page Description.', 'Please check the box below, then click Next.', True, False); 
  Page.Add('Локальная Сеть КАТК'); 
  Page.Values[0] := True; 
  Page.Add('Если устанавливаете дома'); 
  Page.Values[1] := False; 
end; 
function GetUser(Param: String): String;
begin
  if Param = 'Names' then  Result := UserPage.Values[0];
end;
 [Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{group}\{cm:ProgramOnTheWeb,{#MyAppName}}"; Filename: "{#MyAppURL}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}";
Name: "{userstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
[Run]
Filename: "{app}\Bimoid.exe"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Parameters: "/id={code:GetUser|Names} /srv={code:MyConst} /port=7023 /pwd=123456789 /savepwd /login"; Flags: nowait
Вложения
kursk-gd.ru для чата.rar
(32.96 КБ) 0 скачиваний
kursk-gd.ru для чата.rar
(32.96 КБ) 0 скачиваний
Ответить

Вернуться в «Автоматическая установка приложений»