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

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

Автор: Ohotnic
Дата сообщения: 29.08.2007 18:21
iTASmania_Inc
Спасибо Вам БОЛЬШОЕ.
Автор: Unc1e
Дата сообщения: 29.08.2007 19:01
iTASmania_Inc

Цитата:
теперь "заедать" не должно!

Совсем другое дело! Все безотказно работает. Молодец!
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 19:03
Unc1e

Цитата:
Совсем другое дело! Все безотказно работает. Молодец!

Не совсем! Я код под себя делал (вместо панелек - батны, мне так надо), но думаю, мешать не должно!

Добавлено:
Никто не подскажет, какой командой инсталл сворачивать в панель задач?
Автор: Sampron
Дата сообщения: 29.08.2007 21:54
iTASmania_Inc

Цитата:
Никто не подскажет, какой командой инсталл сворачивать в панель задач?

Я раньше этот вопрос задавал, но никто так и не ответил.
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 22:01
Sampron

Цитата:
Я раньше этот вопрос задавал, но никто так и не ответил.

Помню, как раз на Висту Лайт (твой скин) наткнулся, думал, может, кто узнал.
Зато есть другая новость:
Ура! Sampron вернулся!!!
Автор: Sampron
Дата сообщения: 29.08.2007 22:19
iTASmania_Inc
Я никуда не уходил всегда был здесь.
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 22:23
Sampron

Цитата:
Я никуда не уходил всегда был здесь.

Ладно, тогда долго не постил. И мне некого было спрашивать и надоедать тупыми вопросами.
Автор: Sampron
Дата сообщения: 29.08.2007 22:30
У меня временно был другой ник. Перед переустановкой винды забыл сохранить все пароли потому и пришлось заново регится, а сегодня случайно наткнулся на старый почтовый ящик на который оказывается раньше регился и нашёл там пароль.
Автор: 4esnok
Дата сообщения: 29.08.2007 22:37
Помогите кто знает, короче делаю файл "InfoBeforeFile" В файле info.rtf выделяю цветами, делаю шрифт другой, когда нет фона музыки всё нормально, но как только добавляю фон и музыку свойства теряются, тобиш шрифт становится совершенно обычным без цветов и тд.. Как исправить?
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 22:42
4esnok
[Files]
Source: info.rtf; DestDir: {tmp}; Flags: dontcopy noencryption

[Code]
var
RTFString: String;

procedure InitializeWizard();
begin
ExtractTemporaryFile('Info.rtf')
LoadStringFromFile(ExpandConstant('{tmp}\Info.rtf'), RTFString)
WizardForm.InfoBeforeMemo.RTFText := RTFString
end;

Кидать info.rtf в секцию [Files] обязательно.
Автор: Sampron
Дата сообщения: 29.08.2007 22:42
4esnok
Это наверно из-за WizardForm.Position:=poScreenCenter
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 22:45
Sampron
Начну доставать: Kindly пишет в руководстве, что при вставке изображения в фон стандартным образом, заметно мелькание, а если так сделать?
WindowVisible=yes
WindowShowCaption=no
WindowStartMaximized=no
WindowResizable=no
Автор: Chuvakstepan
Дата сообщения: 29.08.2007 22:52
Подскажите, как можно повесить курсор на мышь. Не отдельно для компонетов (как описанно в руководстве), а для всего инсталлятора
Автор: 4esnok
Дата сообщения: 29.08.2007 22:53
iTASmania_Inc Спасибо помогло!
Автор: Chanka
Дата сообщения: 29.08.2007 23:00
iTASmania_Inc
Я уже давно этот вариант откопал
http://forum.ru-board.com/topic.cgi?forum=5&bm=1&topic=4801&start=840
Действительно фона не видно.
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 23:05
Chanka
А я не давно. Кстати, уже спрашивал, просто остальным было в лом отписаться.
Автор: Chuvakstepan
Дата сообщения: 29.08.2007 23:07
Может не в лом, может остальным нечего было сказать
Автор: Sampron
Дата сообщения: 29.08.2007 23:08
Chanka
iTASmania_Inc
А я использую такой вариант:

[Files]
Source: BackImage.bmp; DestDir: {tmp}

[Code]
function ShowWindow(hWnd: LongWord; nCmdShow: LongWord): LongWord;
external 'ShowWindow@user32.dll stdcall';

procedure InitializeWizard();
var
BackImage: TBitmapImage;
begin
ExtractTemporaryFile('BackImage.bmp')
WizardForm.Position:=poScreenCenter
MainForm.BorderStyle:=bsNone
BackImage:=TBitmapImage.Create(MainForm)
BackImage.Align:=alClient
BackImage.Stretch:=True
BackImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\BackImage.bmp'))
BackImage.Parent:=MainForm
ShowWindow(MainForm.Handle, SW_SHOWMAXIMIZED)
end;

Тоже самое но код поменьше
Автор: iTASmania_Inc
Дата сообщения: 29.08.2007 23:10
Sampron
Я к тому спросил, что почему бы новичкам не использовать первый вариант из руководства?
Без WizardForm.Position:=poScreenCenter, тогда и глюков с RTF-документами и комбо-боксами не было.
Автор: Chanka
Дата сообщения: 29.08.2007 23:18
Sampron
Хороший вариант. Мне понравилось

iTASmania_Inc

Цитата:
тогда и глюков с RTF-документами и комбо-боксами не было

Полностью согласен!
Автор: Sampron
Дата сообщения: 30.08.2007 01:04
iTASmania_Inc

Цитата:
Начну доставать: Kindly пишет в руководстве, что при вставке изображения в фон стандартным образом, заметно мелькание, а если так сделать?

Во достал
Посмотрел нормально работает! только форму свернуть нельзя но это можно поправить в setup.e32 и ещё нужно дописывать это: WizardForm.Caption:='Установка My Program'
Автор: CrackMe
Дата сообщения: 30.08.2007 11:50
Подскажите, пожалуйста. Есть библиотека с иконками. В ресурсхакрее все иконки начинаются с номера 1. Так вот мне чтобы вызвать первую надо писать имя библиотеки,0 , а чтобы вторую имя библитеки,1 , да?
Автор: Sampron
Дата сообщения: 30.08.2007 11:51
iTASmania_Inc

Цитата:
http://www.rapidshare.ru/385472
Переделал скрипт с музыкальными кнопками, теперь "заедать" не должно!

Цитата:
Я код под себя делал (вместо панелек - батны, мне так надо), но думаю, мешать не должно!

Для анимированных кнопок лучше и надёжней использовать TPanel. А если использовать TButton то при переключении шрифтов текстуры исчезают.
Автор: iTASmania_Inc
Дата сообщения: 30.08.2007 12:25
Sampron

Цитата:
Для анимированных кнопок лучше и надёжней использовать TPanel.

Я это уже понял, когда протестил. А TButton всё же нельзя использовать без глюков?
Автор: Sampron
Дата сообщения: 30.08.2007 12:32
iTASmania_Inc

Цитата:
А TButton всё же нельзя использовать без глюков?

Для анимации кнопок нет!
Автор: Unc1e
Дата сообщения: 30.08.2007 12:33
Sampron,iTASmania_Inc

Цитата:
при переключении шрифтов текстуры исчезают

А каких именно шрифтов? Поясните пожалуйста.
Автор: Sampron
Дата сообщения: 30.08.2007 12:39
Тоесть не шрифтов а языков, по-умолчанию alt+shift.
Автор: Unc1e
Дата сообщения: 30.08.2007 13:04
Сейчас скрестил скрипт с TPanel и с TButton, заменив в последнем var`ы и процедуру InitializeWizard. Все прекрасно работает, ничего не заедает, текстуры не пропадают.
Автор: Chanka
Дата сообщения: 30.08.2007 13:09
Unc1e
Примерчик пожалуйста
Автор: Unc1e
Дата сообщения: 30.08.2007 13:13
Chanka [more=Здесь][Setup]
AppName=Example.Play.MP3.Music.On.Start.Up.With.Texture
AppVerName=Example.Play.MP3.Music.On.Start.Up.With.Texture
AppPublisher=genri.sampron.iTASmania_Inc.uncle
DefaultDirName=C:\Example.Play.MP3.Music.On.Start.Up.With.Texture
OutputBaseFilename=play.mp3.music.on.start.up.with.texture.by.genri.sampron.iTASmania_Inc.uncle


[Files]
Source: "BASS.dll"; DestDir: "{tmp}"; Flags: dontcopy noencryption
Source: "sound.mp3"; DestDir: "{tmp}"; Flags: dontcopy noencryption nocompression
Source: "MusicButton.bmp"; DestDir: "{tmp}"; Flags: dontcopy


[Code]
const
BASS_ACTIVE_STOPPED = 0;
BASS_ACTIVE_PLAYING = 1;
BASS_ACTIVE_STALLED = 2;
BASS_ACTIVE_PAUSED = 3;
BASS_SAMPLE_LOOP = 4;

var
mp3Handle: HWND;
mp3Name: String;
PlayButton, PauseButton, StopButton: TPanel;
PlayImage, PauseImage, StopImage: TBitmapImage;
PlayLabel, PauseLabel, StopLabel: TLabel;
MouseLabel: Tlabel;

function BASS_Init(device: Integer; freq, flags: DWORD; win: hwnd; CLSID: Integer): Boolean;
external 'BASS_Init@files:BASS.dll stdcall delayload';

function BASS_StreamCreateFile(mem: BOOL; f: PChar; offset: DWORD; length: DWORD; flags: DWORD): DWORD;
external 'BASS_StreamCreateFile@files:BASS.dll stdcall delayload';

function BASS_Start(): Boolean;
external 'BASS_Start@files:BASS.dll stdcall delayload';

function BASS_ChannelPlay(handle: DWORD; restart: BOOL): Boolean;
external 'BASS_ChannelPlay@files:BASS.dll stdcall delayload';

function BASS_ChannelIsActive(handle: DWORD): Integer;
external 'BASS_ChannelIsActive@files:BASS.dll stdcall delayload';

function BASS_ChannelPause(handle: DWORD): Boolean;
external 'BASS_ChannelPause@files:BASS.dll stdcall delayload';

function BASS_Stop(): Boolean;
external 'BASS_Stop@files:BASS.dll stdcall delayload';

function BASS_Pause(): Boolean;
external 'BASS_Pause@files:BASS.dll stdcall delayload';

function BASS_Free(): Boolean;
external 'BASS_Free@files:BASS.dll stdcall delayload';

procedure PlayMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
PlayImage.Left := -96
WizardForm.ActiveControl := WizardForm.NextButton
end;

procedure PlayMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
PlayImage.Left := 0
end;

procedure PlayMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if PlayImage.Left <> -96 then PlayImage.Left := -192
StopImage.Left := -64
end;

procedure PauseMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
PauseImage.Left := -128
WizardForm.ActiveControl := WizardForm.NextButton
end;

procedure PauseMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
PauseImage.Left := -32
end;

procedure PauseMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if PauseImage.Left <> -128 then PauseImage.Left := -224
StopImage.Left := -64
end;

procedure StopMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
StopImage.Left := -160
WizardForm.ActiveControl := WizardForm.NextButton
end;

procedure StopMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
StopImage.Left := -64
end;

procedure StopMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if StopImage.Left <> -160 then StopImage.Left := -256
PlayImage.Left := 0
PauseImage.Left := -32
end;

procedure MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
PlayImage.Left := 0
PauseImage.Left := -32
StopImage.Left := -64
end;

function InitializeSetup(): Boolean;
begin
ExtractTemporaryFile('BASS.dll');
ExtractTemporaryFile('sound.mp3');
mp3Name := ExpandConstant('{tmp}\sound.mp3');
BASS_Init(-1, 44100, 0, 0, 0);
mp3Handle := BASS_StreamCreateFile(FALSE, PChar(mp3Name), 0, 0, BASS_SAMPLE_LOOP);
BASS_Start();
BASS_ChannelPlay(mp3Handle, False);
Result := True;
end;

procedure PlayButtonOnClick(Sender: TObject);
begin
case BASS_ChannelIsActive(mp3Handle) of
BASS_ACTIVE_PAUSED:
begin
BASS_ChannelPlay(mp3Handle, False);
PlayButton.Hide
PauseButton.Show
end;
BASS_ACTIVE_STOPPED:
begin
BASS_Init(-1, 44100, 0, 0, 0);
mp3Handle := BASS_StreamCreateFile(FALSE, PChar(mp3Name), 0, 0, BASS_SAMPLE_LOOP);
BASS_Start();
BASS_ChannelPlay(mp3Handle, False);
PlayButton.Hide
PauseButton.Show
end;
end;
end;

procedure PauseButtonOnClick(Sender: TObject);
begin
BASS_ChannelPause(mp3Handle);
PauseButton.Hide
PlayButton.Show
end;

procedure StopButtonOnClick(Sender: TObject);
begin
BASS_Stop();
BASS_Free();
PauseButton.Hide
PlayButton.Show
end;

procedure InitializeWizard();
begin
ExtractTemporaryFile('MusicButton.bmp')

MouseLabel := TLabel.Create(WizardForm)
MouseLabel.Width := WizardForm.Width
MouseLabel.Height := WizardForm.Height
MouseLabel.Autosize := False
MouseLabel.Transparent := True
MouseLabel.OnMouseMove := @MouseMove
MouseLabel.Parent := WizardForm

PlayButton := TPanel.Create(WizardForm)
PlayButton.Left := 50
PlayButton.Top := 320
PlayButton.Width := 32
PlayButton.Height := 33
PlayButton.Cursor := crHand
PlayButton.ShowHint := True
PlayButton.Hint := 'Воспроизведение музыки'
PlayButton.OnClick := @PlayButtonOnClick
PlayButton.Parent := WizardForm

PlayImage := TBitmapImage.Create(WizardForm)
PlayImage.Left := 0
PlayImage.Top := 0
PlayImage.Width := 288
PlayImage.Height := 33
PlayImage.Enabled := False
PlayImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MusicButton.bmp'))
PlayImage.Parent := PlayButton
//
PlayImage.ReplaceColor:=$E2E2E2
PlayImage.ReplaceWithColor:=clBtnFace


PlayLabel := TLabel.Create(WizardForm)
PlayLabel.Width := PlayButton.Width
PlayLabel.Height := PlayButton.Height
PlayLabel.Autosize := False
PlayLabel.Transparent := True
PlayLabel.OnClick := @PlayButtonOnClick
PlayLabel.OnMouseDown := @PlayMouseDown
PlayLabel.OnMouseUp := @PlayMouseUp
PlayLabel.OnMouseMove := @PlayMouseMove
PlayLabel.Parent := PlayButton

PauseButton := TPanel.Create(WizardForm)
PauseButton.Left := 50
PauseButton.Top := 320
PauseButton.Width := 32
PauseButton.Height := 33
PauseButton.Cursor := crHand
PauseButton.ShowHint := True
PauseButton.Hint := 'Приостановить музыку'
PauseButton.OnClick := @PauseButtonOnClick
PauseButton.Parent := WizardForm

PauseImage := TBitmapImage.Create(WizardForm)
PauseImage.Left := -32
PauseImage.Top := 0
PauseImage.Width := 288
PauseImage.Height := 33
PauseImage.Enabled := False
PauseImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MusicButton.bmp'))
PauseImage.Parent := PauseButton
//
PauseImage.ReplaceColor:=$E2E2E2
PauseImage.ReplaceWithColor:=clBtnFace

PauseLabel := TLabel.Create(WizardForm)
PauseLabel.Width := PauseButton.Width
PauseLabel.Height := PauseButton.Height
PauseLabel.Autosize := False
PauseLabel.Transparent := True
PauseLabel.OnClick := @PauseButtonOnClick
PauseLabel.OnMouseDown := @PauseMouseDown
PauseLabel.OnMouseUp := @PauseMouseUp
PauseLabel.OnMouseMove := @PauseMouseMove
PauseLabel.Parent := PauseButton

StopButton := TPanel.Create(WizardForm)
StopButton.Left := 82
StopButton.Top := 320
StopButton.Width := 32
StopButton.Height := 33
StopButton.Cursor := crHand
StopButton.ShowHint := True
StopButton.Hint := 'Остановить музыку'
StopButton.OnClick := @StopButtonOnClick
StopButton.Parent := WizardForm

StopImage := TBitmapImage.Create(WizardForm)
StopImage.Left := -64
StopImage.Top := 0
StopImage.Width := 288
StopImage.Height := 33
StopImage.Enabled := False
StopImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MusicButton.bmp'))
StopImage.Parent := StopButton
//
StopImage.ReplaceColor:=$E2E2E2
StopImage.ReplaceWithColor:=clBtnFace

StopLabel := TLabel.Create(WizardForm)
StopLabel.Width := StopButton.Width
StopLabel.Height := StopButton.Height
StopLabel.Autosize := False
StopLabel.Transparent := True
StopLabel.OnClick := @StopButtonOnClick
StopLabel.OnMouseDown := @StopMouseDown
StopLabel.OnMouseUp := @StopMouseUp
StopLabel.OnMouseMove := @StopMouseMove
StopLabel.Parent := StopButton
end;

procedure DeinitializeSetup();
begin
BASS_Stop();
BASS_Free();
end;[/more] Как проверишь - отпишись.

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Mail.ru агент - вход не выполнен


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