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

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

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

Сообщение Gnom_aka_Lexander »

R.i.m.s.k.y., Не, не одно и то-же, мак адрес генерируется опираясь на конфу твоего железа, а Ип выдает твой провайдер.
Аватара пользователя
Gnom_aka_Lexander

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

Сообщение Gnom_aka_Lexander »

Photon9,
Цитата Photon9:



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






Код:

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

[Icons]
Name: {group}\FREE Music Downloader Studio; Filename: {app}\FMD Studio.exe; WorkingDir: {app}


Цитата Photon9:



установку дополнительных компонентов
Скрипты Inno Setup. Помощь и советы [часть 3]




[архив] Скрипты Inno Setup. Помощь и советы [часть 2]
Аватара пользователя
YURSHAT

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

Сообщение YURSHAT »

insombia

Пример


Код:

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

[Setup]
AppName=FreeArc Example
AppVerName=FreeArc Example 3.3 Extreme
DefaultDirName={pf}\FreeArc Example
[Files]
Source: compiler:innocallback.dll; DestDir: {tmp}; Flags: dontcopy;
Source: {win}\Help\; DestDir: {app}; Flags: external;
[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl
[Name]
Name: rus; Name: compiler:Name\Russian.isl
[CustomMessages]
rus.hour= часов
rus.min= мин
rus.sec= сек
[code_]
type
TTimerProc = procedure(HandleW, Msg, idEvent, TimeSys: LongWord);
var
StartInstall: Integer;
TimeLabel: TLabel;
TimerID: Longword;
function GetTickCount: DWord; external 'GetTickCount@kernel32';
function WrapTimerProc(callback: TTimerProc; Paramcount: Integer): longword; external 'wrapcallback@files:innocallback.dll stdcall';
function SetTimer(hWnd, nIDEvent, uElapse, lpTimerFunc: LongWord): longword; external 'SetTimer@user32';
function KillTimer(hWnd, nIDEvent: LongWord): LongWord; external 'KillTimer@user32 stdcall delayload';
Function cm(Message: String): String; Begin Result:= ExpandConstant('{cm:'+ Message +'}') End;
Function TicksToTime(Ticks: DWord; h,m,s: String; detail: Boolean): String;
Begin
    if detail then            {hh: mm:ss format}
        Result:= PADZ(IntToStr(Ticks/3600000), 2) +':'+ PADZ(IntToStr((Ticks/1000 - Ticks/1000/3600*3600)/60), 2) +':'+ PADZ(IntToStr(Ticks/1000 - Ticks/1000/60*60), 2)
    else if Ticks/3600 >= 1000 then    {more than hour}
        Result:= IntToStr(Ticks/3600000) +h+' '+ PADZ(IntToStr((Ticks/1000 - Ticks/1000/3600*3600)/60), 2) +m
    else if Ticks/60 >= 1000 then    {1..60 minutes}
        Result:= IntToStr(Ticks/60000) +m+' '+ IntToStr(Ticks/1000 - Ticks/1000/60*60) +s
    else Result:= Format('%.1n', [Abs(Ticks/1000)]) +s    {less than one minute}
End;
procedure GetTime(HandleW, Msg, idEvent, TimeSys: LongWord);
var Remaining: Integer;
begin
with WizardForm.ProgressGauge do begin
  if position > 0 then Remaining:= trunc((GetTickCount - StartInstall) * Abs((max - position)/position))
    TimeLabel.Caption:= 'Inoaeinu ' + TicksToTime(Remaining, cm('hour'), cm('min'), cm('sec'), false)
    if (Remaining = 0) then TimeLabel.Caption:= 'Завершение...'
  end;
end;
procedure InitializeWizard();
begin
TimeLabel:= TLabel.Create(WizardForm)
TimeLabel.SetBounds(ScaleX(0), ScaleY(80), ScaleX(457), ScaleY(20));
TimeLabel.AutoSize:= False
TimeLabel.Transparent:= True;
TimeLabel.Parent:= WizardForm.InstallingPage;
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
If CurStep = ssInstall then
  begin
    StartInstall:= GetTickCount
    TimerID:= SetTimer(0,0, 500, WrapTimerProc(@GetTime, 4))
  end;
end;
procedure DeinitializeSetup();
begin
KillTimer(0, TimerID)
end;
Аватара пользователя
N00bak

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

Сообщение N00bak »

спс)

в первые с такой проблемой столкнулся)
Вложения
Вложение skript.rar больше недоступно
Вложения
skript.rar
(13.2 КБ) 0 скачиваний
skript.rar
(13.2 КБ) 0 скачиваний
Аватара пользователя
murlakatamenka

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

Сообщение murlakatamenka »

Цитата ChVL:



Есть ли в Inno идентификатор установленной системы (подобно IsWin64)?

Надо разделить запуск файлов для Win7 и не для Win7:
Скрипты Inno Setup. Помощь и советы [часть 3]






Код:

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

[_Code]
Function Win7():boolean;
var Version: TWindowsVersion;
begin
  GetWindowsVersionEx (Version);
  if (Version.Major = 6) and (Version.Minor = 1) then Result := true else Result := False;
end;

Вин7 - 6,1

Виста - 6,0

ХР - 5,1
Аватара пользователя
STRAYKER

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

Сообщение STRAYKER »

ChVL,
Цитата ChVL:



[Run]

Filename: {app}\file_WinXP.exe; Check: "not IsWin7";

Filename: {app}\file_Win7.exe; Check: "IsWin7";
Скрипты Inno Setup. Помощь и советы [часть 3]






Код:

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

[Run]
; "ниже" Win7
Filename: {app}\file_WinXP.exe; OnlyBelowVersion: 0,6.1;
; Win7 и "выше"
Filename: {app}\file_Win7.exe; MinVersion: 0,6.1;

R.i.m.s.k.y., зачем через

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

? [img]images/smilies/wink.gif[/img]
Аватара пользователя
Tco 03

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

Сообщение Tco 03 »

Хочу перепаковать одну программу, но нужно чтобы обновления к этой программе подходили к перепакованной программе.

То есть, как правильно зарегистрировать перепакованную программу, чтобы обновления для оригинальной программы находили путь установки к перепакованной программе?
Аватара пользователя
Влад2012

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

Сообщение Влад2012 »

Цитата Habetdin:



R.i.m.s.k.y., зачем через

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

 [url=viewtopic.php?p=2800188#p2800188]»[/url]
		
	
	
Прописывал - не сработало почему то. Пришлось самому делать. И к тому же MinVersion и OnlyBelowVersion не во всех секциях можно прописать, а такая функция работает везде.
Аватара пользователя
Gnom_aka_Lexander

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

Сообщение Gnom_aka_Lexander »

Помогите как вместо распаковки архивов ARC поставить на MZ.Помогите!!! оОчень надо!!!




Цитата Photon9:



2. Как прикрутить через скрипт установки программы, установку дополнительных компонентов, например Games for Windows Live, C++, DX и т.д. , желательно с возможностью выбора ставить или нет.
Скрипты Inno Setup. Помощь и советы [часть 3]






PHP код:

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

[Run]

Filename: "{src}\[b]НАЗВАНИЕ ПАПКИ[/b]\[b]НАЗВАНИЕ ФАЙЛА.exe[/b]"; WorkingDir: "{src}\[b]ПАПКА[/b]"; Parameters: "/silent"; Check: [b]ПАПКА[/b]; Flags: waituntilterminated; BeforeInstall: [b]НАЗВАНИЕ ФАЙЛА[/b]Progress; 






все файлы закинуть в папку с инсталятором



Помогите как вместо распаковки архивов ARC поставить на MZ.Помогите!!! оОчень надо!!!
Аватара пользователя
slysoft

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

Сообщение slysoft »

Спасибо огромное Лександер, всё работает, УРА!!!
Ответить

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