Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: Vitalliano
Дата сообщения: 07.05.2009 09:31
spider91


Цитата:
Vitalliano


помотри в колекции скритов и в сборнике впросов, но там вроде тоже по таймеру.


Дело в том, что тот скрипт на который я ссылаюсь и есть из коллекции скриптов, но он по таймеру.
Автор: Pantalone
Дата сообщения: 07.05.2009 10:31
Ну что никто не знает как два разных дистрибутива запихнуть в один сетап и устанавливать или то или то в зависимости от выбора?
Автор: clemenco
Дата сообщения: 07.05.2009 11:01
Неужели никто не может помочь

http://forum.ru-board.com/topic.cgi?forum=5&topic=29117&start=1900#9

ЗЫ Решил. Всё оказалось очень просто.
Автор: Yoldosh
Дата сообщения: 07.05.2009 11:33
Ребята помогите как зделать штобы при нажатие на кнопку отмена инсталятор автоматически закривалсья не спрашивая разрешение
Автор: Don_Juan
Дата сообщения: 07.05.2009 14:07
Yoldosh


Код: procedure CancelButtonClick(CurPage: Integer; var Cancel, Confirm: Boolean);
begin
Confirm:=False;
end;
Автор: spider91
Дата сообщения: 07.05.2009 14:32
DeKaNszn


врядли ето поможет. на етой странице текстура вобще не отображается, ни нажатая, ни в обычном состоянии
Автор: Sig666
Дата сообщения: 07.05.2009 14:57
Pantalone

Возможно подойдет
[more]#define progA 'Программа 1'
#define progB 'Программа 2'

#define progAwithVer 'Программа 1 v 1.3'
#define progBwithVer 'Программа 2 v 2.6'

[Setup]
AppName={code:retrieveappname}
AppVerName={code:retrieveappnamewithver}
DefaultDirName={pf}\{code:retrieveappname}
[Files]
Source: I:\image1.bmp; DestDir: {tmp}; Flags: dontcopy
Source: I:\image2.bmp; DestDir: {tmp}; Flags: dontcopy
Source: prog1; DestDir: {app}; Flags: recursesubdirs createallsubdirs; check: prog1
Source: prog2; DestDir: {app}; Flags: recursesubdirs createallsubdirs; check: prog2
[_Code]
var
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;

function retrieveappnamewithver(paramstr:string):string;
begin
if RadioButton1.Checked then
Result:='{#progAwithVer}';
if RadioButton2.Checked then
Result:='{#progBwithVer}';
end;

function retrieveappname(paramstr:string):string;
begin
if RadioButton1.Checked then
Result:='{#progA}';
if RadioButton2.Checked then
Result:='{#progB}';
end;

function prog1: Boolean;
begin
Result:=RadioButton1.Checked;
end;

function prog2: Boolean;
begin
Result:=RadioButton2.Checked;
end;

function InitializeSetup(): Boolean;
var
SelectDialog: tsetupform;
Button1: TButton;
Label1: TLabel;
begin

SelectDialog := CreateCustomForm();
with SelectDialog do
begin
ClientWidth := ScaleX(240);
ClientHeight := ScaleY(120);
BorderStyle:= bsToolWindow;
Caption:='Выбор программ';
Center;
end;

{ Label1 }
Label1 := TLabel.Create(SelectDialog);
with Label1 do
begin
Parent := SelectDialog;
Caption := 'Что вы хотите установить?';
Left := ScaleX(10);
Top := ScaleY(10);
Width := ScaleX(150);
Height := ScaleY(26);
AutoSize := False;
WordWrap := True;
end;

{ RadioButton1 }
RadioButton1 := TRadioButton.Create(SelectDialog);
with RadioButton1 do
begin
Parent := SelectDialog;
Caption := '{#progA}';
Left := ScaleX(10);
Top := ScaleY(45);
Width := ScaleX(113);
Height := ScaleY(17);
Checked:= true;
TabOrder := 0;
end;

{ RadioButton2 }
RadioButton2 := TRadioButton.Create(SelectDialog);
with RadioButton2 do
begin
Parent := SelectDialog;
Caption := '{#progB}';
Left := ScaleX(10);
Top := ScaleY(66);
Width := ScaleX(113);
Height := ScaleY(17);
TabOrder := 1;
end;

{ Button1 }
Button1 := TButton.Create(SelectDialog);
with Button1 do
begin
Parent := SelectDialog;
Caption := 'Далее >';
Left := ScaleX(150);
Top := ScaleY(95);
Width := ScaleX(75);
Height := ScaleY(23);
TabOrder := 2;
ModalResult:=mrOk;
end;

if SelectDialog.ShowModal = mrOk then result:=true;
end;

procedure InitializeWizard();
begin
if RadioButton1.Checked then begin
ExtractTemporaryFile('image1.bmp');
WizardForm.WizardBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\image1.bmp'));
WizardForm.WizardBitmapImage2.Bitmap.Assign(WizardForm.WizardBitmapImage.Bitmap);
end;
if RadioButton2.Checked then begin
ExtractTemporaryFile('image2.bmp');
WizardForm.WizardBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\image2.bmp'));
WizardForm.WizardBitmapImage2.Bitmap.Assign(WizardForm.WizardBitmapImage.Bitmap);
end;
end;[/more]
Записям реетра и ярлыкам, относящимся к той или иной проге, присваивай соот. параметр check
Автор: DeKaNszn
Дата сообщения: 07.05.2009 15:47
boss911

в своем скрипте добавь флаг noencryption этим файлам:

music.xm
BASSMOD.dll
MusicButton.bmp
ButtonImage.bmp


spider91

у тебя вообще не грузится туда текстура
попробуй посмотреть метод загрузки текстур в Corona Skin
Автор: spider91
Дата сообщения: 07.05.2009 15:51
DeKaNszn


дык на других страницах грузится. может нужно высоту поправить, только где я незнаю
Автор: boss911
Дата сообщения: 07.05.2009 16:14
DeKaNszn

Цитата:
смотри в шапке:

Я уже нашел, то, что мне надо, но возникла проблема с мои скриптом. Проблему я описал вам ПМ, посмотрите, плиз.
Автор: DeKaNszn
Дата сообщения: 07.05.2009 16:21
boss911


Цитата:
Проблему я описал вам ПМ


решение через пост выше твоего
Автор: spider91
Дата сообщения: 07.05.2009 16:32
как здесь убрать белый фон вокруг иконки и сделать надпись внизу белой?


Автор: boss911
Дата сообщения: 07.05.2009 16:57
DeKaNszn

Цитата:
решение через пост выше твоего

Извиняюсь, не пойму, куда я смотрел, что не увидел вашего совета. Сейчас попробую, еще раз спасибо.
Автор: Evil555
Дата сообщения: 07.05.2009 19:35
народ напишите плиз обозначения что к чему жилательно скрин на игру какую нибудь или мож есть ссылки на означения киньте плиз
Автор: spider91
Дата сообщения: 07.05.2009 19:50
Evil555


я чет непонял что именно тебе надо. обьясни подоходчивей
Автор: Yoldosh
Дата сообщения: 07.05.2009 19:55
Don_Juan
Спасибо
Автор: SotM
Дата сообщения: 07.05.2009 20:35
Evil555
Казнить нельзя помиловать? Это на олбанском написано?!
Автор: spider91
Дата сообщения: 07.05.2009 20:44
вопрос с иконкой снят (я ее заменил на другую).
но с надписью пока еще не разобрался. кто может помогите.
Автор: alexdemon
Дата сообщения: 07.05.2009 21:45
У меня такой вопрос мне нужно чтобы в конце установки игры выходило окошко инсталятора где я бы мог поставить галочки если нужно на компоненты которые нужно установить как это сделать.
Вот эти компоненты:
[Run]
Filename: "{src}\directx9\dxsetup.exe"; Description: "Установить DirectX 9.0C";
Filename: "{src}\PhysX_7[1].03.21_SystemSoftware.exe"; Description: "Установить AGEIA PhysX v7.03.21";
Filename: "{src}\AdobeReader\AdbeRdr705_rus_full.exe"; Description: "Установить Adobe Reader 7.05";
Автор: spider91
Дата сообщения: 07.05.2009 22:10
alexdemon

допиши везде Flags: postinstall
Автор: boss911
Дата сообщения: 08.05.2009 00:30
Ничего не понимаю, если год назад компилилось без проблем -

Код: [Setup]
AppVerName=My Prog 1.0

[Registry]
Root: HKLM; SubKey: "SOFTWARE\Microsoft\Windows\{#SetupSetting(""AppVerName"")} (бла-бла-бла)"; ValueType: none; Check: not IsTaskSelected('BackUp')
Автор: Artem_Butenko
Дата сообщения: 08.05.2009 02:32
Заранее извиняюсь перед всеми за изрядно надоевшие вопросы, но решить самостоятельно их пока не могу. Вопрос 1: как защитить тихий инсталл от комбинации Alt+F4? Вопрос 2: как блокировать отображение окна тихого инсталла на панели задач, при переключении между окнами по Alt+Tab? Вопрос 3: как правильно завершить работу тихого инсталла без вывода сообщений, если ключ системного реестра (из которого извлекается путь установки) не найден? Вопрос 4: может есть специализированная утилита для создания тихих инсталляций?
Автор: DeKaNszn
Дата сообщения: 08.05.2009 05:47
boss911

попробуй


Код: [no]#define MyAppVerName "My Prog 1.0"
[Setup]
AppVerName={#MyAppVerName}

[Registry]
Root: HKLM; SubKey: "SOFTWARE\Microsoft\Windows\{#MyAppVerName} (бла-бла-бла)"; ValueType: none; Check: not IsTaskSelected('BackUp') [/no]
Автор: Vitalliano
Дата сообщения: 08.05.2009 08:56
А по поводу принудительного прочтения соглашения, никто не подскажет ([more=без таймера][Setup]
AppName=My Program
AppVerName=My Program v.1.2
DefaultDirName={pf}\My Program
LicenseFile=eula.rtf

[Files]
Source: compiler:InnoCallback.dll; Flags: dontcopy

[Code]
type
TProc = procedure(HandleW, msg, idEvent, TimeSys: LongWord);
const
EM_GETFIRSTVISIBLELINE = $CE; TestLine = 40;
var
TimerID: LongWord;

function WrapTimerProc(callback:TProc; paramcount:integer):longword; external 'wrapcallback@files:innocallback.dll stdcall';

function SetTimer(hWnd: LongWord; nIDEvent, uElapse: LongWord; lpTimerFunc: LongWord): LongWord; external 'SetTimer@user32.dll stdcall';

function KillTimer(hWnd: LongWord; nIDEvent: LongWord): LongWord; external 'KillTimer@user32.dll stdcall';

procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
var
CurrLine: integer;
begin
CurrLine:= SendMessage(WizardForm.LicenseMemo.Handle, EM_GETFIRSTVISIBLELINE, 0, 0);
If CurrLine >= TestLine then
begin
WizardForm.LicenseAcceptedRadio.Enabled:= True;
KillTimer(0, TimerID);
end;
//WizardForm.Caption:= IntToStr(CurrLine);
end;

procedure InitializeWizard();
begin
WizardForm.LicenseAcceptedRadio.Enabled:= False;
end;

procedure CurPageChanged(CurPageID: Integer);
var
pfunc: LongWord;
begin
if CurPageID = wpLicense then
begin
pfunc:= WrapTimerProc(@OnTimer, 4);
TimerID:= SetTimer(0, 0, 500, pfunc);
end else
KillTimer(0, TimerID);
end;

procedure DeinitializeSetup();
begin
KillTimer(0, TimerID);
end;[/more])???
Автор: Relatior
Дата сообщения: 08.05.2009 09:31
люди подскажите.

мне надо сделать так, чтобы до установки игры в самом начале запускалась установка нужной для игры программы, а уже после выбор каталога установки игры и установка самой игры?

Добавлено:

Цитата:
люди подскажите.

мне надо сделать так, чтобы до установки игры в самом начале запускалась установка нужной для игры программы, а уже после выбор каталога установки игры и установка самой игры?

да и нужно чтобы пока не закончиться установка этой программы установка игры не начиналась!!!
Автор: BondDaniil00
Дата сообщения: 08.05.2009 09:47
Помогите подскажите
вот скрин http://img15.imageshack.us/img15/3334/67424762.jpg (идет процес выполнения скриптов) как на выделеное место вставить картину?

Добавлено:
Relatior

Используй функцию процедуру CurStepChanged(CurStep: TSetupStep); Эта функция выполнит ваши собственные предустановочные и послеустановочные заданияю
CurStep=ssInstall вызывается только перед стартом установки, CurStep=ssPostInstall - только после завершения установки, CurStep=ssDone - только перед самым окончанием процесса успешной установки.

Автор: Relatior
Дата сообщения: 08.05.2009 10:11
BondDaniil00 - СПАСИБО!!!
Автор: BondDaniil00
Дата сообщения: 08.05.2009 11:00
spider91
вот вставь
with WizardForm do begin
Font.Color:=clWindow
Автор: Qarma
Дата сообщения: 08.05.2009 11:57
Какой нибудь добрый человек собрал бы скрипты разбросанные на пред. страницах в арих.....
Автор: spider91
Дата сообщения: 08.05.2009 12:42
BondDaniil00

не идет.


Qarma


поддерживаю. не мешало бы обновить колекцию

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: в очередной раз босудим антивиры?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.