Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]
ILIA_1992
19-07-2011, 00:57
помогите убрать это http://ipic.su/img/img3/fs/Bezyyannyj.1311021895.jpg
И помогите сделать чтобы установщик распаковывал bin файлы
Вот сам скрипт http://rghost.ru/15018141
ILIA_1992, Давай ты научишься читать форум, справки, документацию, эти навыки тебе помогут стать хорошим репакером. .bin это переименованый .arc или другой файл и ты можешь на распаковку прописать любой формат который ты вручную прописал. В твоём (точнее YURSHAT'a) скрипте всё правильно сделано, но data.bin у тебя в папке не было, а был файл data.bin1 я его переименовал бросил в папку "Output" и всё распаковалось и ты определись с распаковщиком, фриарк или исдон. Кнопку убрал закомментировав строчки
BtnSetVisibility(LanguageButton[1],True);
BtnSetVisibility(LanguageButton[2],True);
LanguageLabel.Show;
LngNameLbl.Show;
Качнуть готовенькое, головой думать запрещено!!! (http://rghost.ru/15024881)
Извини что я грубо, просто надо же что-то понимать и изучать, а не только получать готовые ответы. Если есть люди с рубоарда, простите меня, теперь я знаю каким был, от всего сердца прошу прощения!
[hr]
качай, я всё исправил, и как работал, добавил музыку?:mail1:
если нажмёшь кнопку "полезное сообщение", мне будет приятнее
ILIA_1992
19-07-2011, 03:00
Rikill, я вообщето над этим скриптом работал долго,но исправить неполучается.
Я сразу делаю сам ,только потом что-то спрашиваю
Спасиб за помощь
Dark_Delphin
19-07-2011, 15:03
Всем привет.
Я не давно находил где-то скины для инсталляторов, очень много.
Тепрь не могу найти их. Где их можно найти?
Gnom_aka_Lexander
19-07-2011, 15:15
ntrx, Держи. (http://ifolder.ru/22633839)
Neutron, В сборке их немного, а то весить стала много, да и комплект скинов весом в гиг, ужатый до 50-ти метров, ставится долго, лучше отдельно их ставить.
Dark_Delphin
19-07-2011, 15:26
Лександер, Neutron, спасибо большое.
Извеняюсь что не по теме.
Подскажите в чем ошибка. Компилируется без ошибок, но при установке получаю "Could not call proc"
[Setup]
AppName=Notepad++ 5.9.3
AppVerName=Notepad++ 5.9.3
AppVersion=5.9.3
DefaultDirName={pf}\Notepad++
DefaultGroupName=Notepad++
OutputBaseFilename=Notepad++_5.9.3 RC_FullPlug
VersionInfoVersion=5.9.3.0
DirExistsWarning=no
ShowTasksTreeLines=yes
Uninstallable=yes
CreateUninstallRegKey=no
ChangesEnvironment=yes
ChangesAssociations=yes
Compression=lzma2/ultra
LZMAMatchFinder=BT
LZMAUseSeparateProcess=yes
InternalCompressLevel=ultra
SolidCompression=yes
MergeDuplicateFiles=yes
SetupIconFile=N.ico
WizardImageFile=embedded\Blue.bmp
WizardSmallImageFile=embedded\Blue.bmp
[Files]
Source: "{app}\*"; DestDir: "{app}"; AfterInstall: ExtLog(); Flags: replacesameversion createallsubdirs recursesubdirs
[Registry]
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Notepad++; ValueType: string; ValueName: DisplayName; ValueData: Notepad++; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Notepad++; ValueType: string; ValueName: UninstallString; ValueData: {app}\uninstall.exe; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Notepad++; ValueType: string; ValueName: DisplayIcon; ValueData: {app}\notepad++.exe; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Notepad++; ValueType: string; ValueName: DisplayVersion; ValueData: 5.9.3.0; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Notepad++; ValueType: string; ValueName: URLInfoAbout; ValueData: http://notepad-plus-plus.org/; Flags: uninsdeletevalue uninsdeletekeyifempty
[C*ode]
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
Confirm:=False;
end;
Procedure InitializeWizard();
begin
with WizardForm do begin
Position:=poScreenCenter
ClientWidth:=690
ClientHeight:=496
Font.Color:=clWindow
Font.Name:='MS Sans Serif'
Font.Style:=[]
with Bevel do begin
Left:=0
Top:=313
Width:=497
Height:=2
Visible:=False
end;
with CancelButton do begin
Left:=600
Top:=462
Width:=77
Height:=25
BringToFront
end;
with NextButton do begin
Left:=375
Top:=462
Width:=77
Height:=25
BringToFront
end;
with BackButton do begin
Left:=293
Top:=462
Width:=77
Height:=25
BringToFront
end;
with OuterNotebook do begin
Left:=0
Top:=0
Width:=690
Height:=496
with WelcomePage do begin
Color:=11232829
with WizardBitmapImage do begin
Left:=0
Top:=0
Width:=690
Height:=496
end;
with WelcomeLabel2 do begin
Left:=205
Top:=230
Width:=465
Height:=200
end;
with WelcomeLabel1 do begin
Left:=205
Top:=190
Width:=465
Height:=28
Font.Color:=clWindow
Font.Size:=8
end;
end;
with InnerPage do begin
with Bevel1 do begin
Left:=0
Top:=58
Width:=499
Height:=3
Visible:=False
end;
with InnerNotebook do begin
Left:=205
Top:=79
Width:=465
Height:=354
BringToFront
Color:=11232829
with LicensePage do begin
with LicenseNotAcceptedRadio do begin
Left:=0
Top:=338
Width:=465
Height:=17
Checked:=True
end;
with LicenseAcceptedRadio do begin
Left:=0
Top:=318
Width:=465
Height:=17
end;
with LicenseMemo do begin
Left:=0
Top:=38
Width:=465
Height:=266
ReadOnly:=True
ScrollBars:=ssVertical
end;
with LicenseLabel1 do begin
Left:=0
Top:=0
Width:=465
Height:=28
end;
end;
with PasswordPage do begin
with PasswordEdit do begin
Left:=0
Top:=50
Width:=465
Height:=21
Font.Color:=clWindowText
end;
with PasswordEditLabel do begin
Left:=0
Top:=34
Width:=465
Height:=14
end;
with PasswordLabel do begin
Left:=0
Top:=0
Width:=465
Height:=28
end;
end;
with InfoBeforePage do begin
with InfoBeforeMemo do begin
Left:=0
Top:=24
Width:=465
Height:=327
ScrollBars:=ssVertical
end;
with InfoBeforeClickLabel do begin
Left:=0
Top:=0
Width:=465
Height:=14
end;
end;
with UserInfoPage do begin
with UserInfoSerialEdit do begin
Left:=0
Top:=120
Width:=465
Height:=21
Font.Color:=clWindowText
end;
with UserInfoSerialLabel do begin
Left:=0
Top:=104
Width:=465
Height:=14
end;
with UserInfoOrgEdit do begin
Left:=0
Top:=68
Width:=465
Height:=21
Font.Color:=clWindowText
end;
with UserInfoOrgLabel do begin
Left:=0
Top:=52
Width:=465
Height:=14
end;
with UserInfoNameEdit do begin
Left:=0
Top:=16
Width:=465
Height:=21
Font.Color:=clWindowText
end;
with UserInfoNameLabel do begin
Left:=0
Top:=0
Width:=465
Height:=14
end;
end;
with SelectDirPage do begin
with SelectDirBitmapImage do begin
Left:=0
Top:=0
Width:=32
Height:=32
Visible:=False
end;
with DiskSpaceLabel do begin
Left:=0
Top:=340
Width:=465
Height:=14
end;
with DirBrowseButton do begin
Left:=388
Top:=288
Width:=77
Height:=25
end;
with DirEdit do begin
Left:=0
Top:=290
Width:=378
Height:=21
Font.Color:=clWindowText
end;
with SelectDirBrowseLabel do begin
Left:=0
Top:=24
Width:=465
Height:=28
end;
with SelectDirLabel do begin
Left:=0
Top:=0
Width:=465
Height:=14
end;
end;
with SelectComponentsPage do begin
with ComponentsDiskSpaceLabel do begin
Left:=0
Top:=340
Width:=417
Height:=14
end;
with ComponentsList do begin
Left:=0
Top:=48
Width:=465
Height:=275
Font.Color:=clWindow
Color:=11232829
end;
with TypesCombo do begin
Left:=0
Top:=24
Width:=465
Height:=21
Font.Color:=clWindow
Color:=11232829
end;
with SelectComponentsLabel do begin
Left:=0
Top:=0
Width:=465
Height:=14
end;
end;
with SelectProgramGroupPage do begin
with SelectGroupBitmapImage do begin
Left:=0
Top:=0
Width:=32
Height:=32
Visible:=False
end;
with NoIconsCheck do begin
Left:=0
Top:=337
Width:=465
Height:=17
end;
with GroupBrowseButton do begin
Left:=388
Top:=288
Width:=77
Height:=25
end;
with GroupEdit do begin
Left:=0
Top:=290
Width:=378
Height:=21
Font.Color:=clWindowText
end;
with SelectStartMenuFolderBrowseLabel do begin
Left:=0
Top:=24
Width:=465
Height:=28
end;
with SelectStartMenuFolderLabel do begin
Left:=0
Top:=0
Width:=465
Height:=14
end;
end;
with SelectTasksPage do begin
with TasksList do begin
Left:=0
Top:=34
Width:=465
Height:=317
Color:=11232829
end;
with SelectTasksLabel do begin
Left:=0
Top:=0
Width:=465
Height:=28
end;
end;
with ReadyPage do begin
with ReadyMemo do begin
Left:=0
Top:=34
Width:=465
Height:=317
Color:=11232829
end;
with ReadyLabel do begin
Left:=0
Top:=0
Width:=465
Height:=28
end;
end;
with PreparingPage do begin
with PreparingErrorBitmapImage do begin
Left:=0
Top:=0
Width:=16
Height:=16
Visible:=False
end;
with PreparingLabel do begin
Left:=24
Top:=0
Width:=393
Height:=14
Visible:=False
end;
end;
with InstallingPage do begin
with FilenameLabel do begin
Left:=0
Top:=16
Width:=465
Height:=16
end;
with StatusLabel do begin
Left:=0
Top:=0
Width:=465
Height:=16
end;
with ProgressGauge do begin
Left:=0
Top:=42
Width:=465
Height:=21
Min:=0
Max:=100
end;
end;
with InfoAfterPage do begin
with InfoAfterMemo do begin
Left:=0
Top:=24
Width:=465
Height:=327
ScrollBars:=ssVertical
end;
with InfoAfterClickLabel do begin
Left:=0
Top:=0
Width:=465
Height:=14
end;
end;
end;
with MainPanel do begin
Left:=0
Top:=0
Width:=690
Height:=496
Color:=clWindow
with WizardSmallBitmapImage do begin
Left:=0
Top:=0
Width:=690
Height:=496
BackColor:=clWindow
end;
with PageDescriptionLabel do begin
Left:=25
Top:=25
Width:=500
Height:=14
Color:=6697728
Font.Color:=clWindow
end;
with PageNameLabel do begin
Left:=15
Top:=7
Width:=500
Height:=14
Color:=6697728
Font.Color:=clWindow
end;
end;
end;
with FinishedPage do begin
Color:=11232829
with WizardBitmapImage2 do begin
Left:=0
Top:=0
Width:=690
Height:=496
end;
with NoRadio do begin
Left:=205
Top:=227
Width:=465
Height:=17
end;
with YesRadio do begin
Left:=205
Top:=199
Width:=465
Height:=17
end;
with RunList do begin
Left:=205
Top:=199
Width:=465
Height:=149
BorderStyle:=bsNone
end;
with FinishedLabel do begin
Left:=205
Top:=119
Width:=465
Height:=53
end;
with FinishedHeadingLabel do begin
Left:=205
Top:=79
Width:=465
Height:=24
Font.Color:=clWindow
Font.Size:=8
end;
end;
end;
with BeveledLabel do begin
Left:=10
Top:=468
Width:=150
Height:=14
Enabled:=False
Color:=14405068
end;
end;
end;
var
ProgressLabel: TLabel;
procedure ExtLog();
begin
with WizardForm.ProgressGauge do begin
ProgressLabel.Caption:=IntToStr((Position-Min)/((Max - Min)/100)) + '%'
begin
ProgressLabel:=TLabel.Create(WizardForm)
with WizardForm.ProgressGauge do
begin
ProgressLabel.Top:=4
ProgressLabel.Left:=200
ProgressLabel.Caption:='0%'
ProgressLabel.AutoSize:=True
ProgressLabel.Font.Color:=clWindowText
ProgressLabel.Font.Style:=[fsBold]
ProgressLabel.Transparent:=True
ProgressLabel.Parent:=WizardForm.ProgressGauge
end;
end;
end;
end;
procedure BackupData0(FileExt: String);
var
OldValueData: string;
begin
if RegKeyExists(HKCR, '.' + FileExt) then
begin
RegQueryStringValue(HKCR, '.' + FileExt, '', OldValueData);
RegWriteStringValue(HKCR, '.' + FileExt + '(backup)', '', OldValueData);
end;
end;
procedure RestoreData0(FileExt: String);
var
OldValueData: string;
begin
if RegKeyExists(HKCR, '.' + FileExt + '(backup)')then
begin
RegQueryStringValue(HKCR, '.' + FileExt + '(backup)', '', OldValueData);
RegWriteStringValue(HKCR, '.' + FileExt, '', OldValueData);
RegDeleteKeyIncludingSubkeys(HKCR, '.' + FileExt + '(backup)');
end;
end;
procedure BackupData1(FileExt: String);
var
OldValueData: string;
begin
if RegKeyExists(HKLM, '.' + FileExt) then
begin
RegQueryStringValue(HKLM, '.' + FileExt, '', OldValueData);
RegWriteStringValue(HKLM, '.' + FileExt + '(backup)', '', OldValueData);
end;
end;
procedure RestoreData1(FileExt: String);
var
OldValueData: string;
begin
if RegKeyExists(HKLM, '.' + FileExt + '(backup)')then
begin
RegQueryStringValue(HKLM, '.' + FileExt + '(backup)', '', OldValueData);
RegWriteStringValue(HKLM, '.' + FileExt, '', OldValueData);
RegDeleteKeyIncludingSubkeys(HKLM, '.' + FileExt + '(backup)');
end;
end;
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then
begin
RestoreData0('asp');
RestoreData0('bsh');
RestoreData0('cc');
RestoreData0('cs');
RestoreData0('css');
RestoreData0('inc');
RestoreData0('ini');
RestoreData0('java');
RestoreData0('js');
RestoreData0('jsp');
RestoreData0('log');
RestoreData0('lst');
RestoreData0('lua');
RestoreData0('mx');
RestoreData0('nfo');
RestoreData0('pas');
RestoreData0('php');
RestoreData0('pl');
RestoreData0('rc');
RestoreData0('sh');
RestoreData0('sql');
RestoreData0('tex');
RestoreData0('txt');
RestoreData0('vb');
RestoreData0('vbs');
RestoreData0('xml');
RestoreData1('asp');
RestoreData1('bsh');
RestoreData1('cc');
RestoreData1('cs');
RestoreData1('css');
RestoreData1('inc');
RestoreData1('ini');
RestoreData1('java');
RestoreData1('js');
RestoreData1('jsp');
RestoreData1('log');
RestoreData1('lst');
RestoreData1('lua');
RestoreData1('mx');
RestoreData1('nfo');
RestoreData1('pas');
RestoreData1('php');
RestoreData1('pl');
RestoreData1('rc');
RestoreData1('sh');
RestoreData1('sql');
RestoreData1('tex');
RestoreData1('txt');
RestoreData1('vb');
RestoreData1('vbs');
RestoreData1('xml');
end;
end;
procedure CurStepChanged(CurStep: TSetupStep);
var
S: TArrayOfString;
F: string;
i: Integer;
begin
If CurStep=ssPostInstall then
RenameFile(ExpandConstant('{app}\unins000.exe'), ExpandConstant('{app}\uninstall.exe'));
RenameFile(ExpandConstant('{app}\unins000.dat'), ExpandConstant('{app}\uninstall.dat'));
F:= ExpandConstant('{app}\config.xml');
if not FileExists(F) then Exit; // если файла нет, выходим
LoadStringsFromFile(F, S); // загружаем файл
for i:= 0 to GetArrayLength(S)-1 do
if Pos(' <GUIConfig name="stylerTheme" path= />', S[i]) > 0 then
S[i]:= ExpandConstant(' <GUIConfig name="stylerTheme" path="{app}\stylers.xml" />'); // записываем параметры командной строки
SaveStringsToFile(F, S, False); // сохраняем файл
end;
[Run]
Filename: "RegSvr32"; Parameters: "/s NppShell_04.dll"; WorkingDir: "{app}"; Description: "Интегрировать контекстную панель 'Notepad++' в MS Explorer";
[INI]
Filename: "{app}\plugins\Config\SpellChecker.ini"; Section: "Spell-Checker"; Key: "Current Language"; String: "ru"
Filename: "{app}\plugins\Config\SpellChecker.ini"; Section: "Spell-Checker"; Key: "Relative Path"; String: "{app}\plugins\Spell Checker\bin\"
[Icons]
Name: "{userdesktop}\Notepad++"; Filename: "{app}\notepad++.exe"; WorkingDir: "{app}"; Comment: "Notepad++ 5.9.3 RC";
Name: "{group}\Notepad++"; Filename: "{app}\notepad++.exe"; WorkingDir: "{app}"; Comment: "Notepad++ 5.9.3 RC";
Name: "{group}\Help"; Filename: "{app}\NppHelp.chm"; WorkingDir: "{app}"; Comment: "Notepad++ 5.9.3 RC";
Name: "{group}\Uninstall"; Filename: "{uninstallexe}"; WorkingDir: "{app}"; Comment: "Uninstall Notepad++ from your PC";
[Languages]
Name: "Russian"; MessagesFile: "embedded\Russian.isl";
ivsatel, на какую строчку жалуется или помечает красным?
Rikill, Компилируется без красного. Ошибка в процессе инсталляции.
Вот полный скрипт http://ifolder.ru/24778570
возможно помогу и скрипт будет в этом сообщении.
[hr]
на версии от рестулз всё прошло удачно при комментировании строчек (ибо у меня нет этих файлов)
SetupIconFile=N.ico
WizardImageFile=embedded\Blue.bmp
WizardSmallImageFile=embedded\Blue.bmp
[Files]
Source: "{app}\*"; DestDir: "{app}"; AfterInstall: ExtLog(); Flags: replacesameversion createallsubdirs recursesubdirs
[Languages]
Name: "Russian"; MessagesFile: "embedded\Russian.isl";
(ибо у меня нет этих файлов) »
Тут думаю дело не в файлах, а в Procedure InitializeWizard();.
ivsatel, а в чём, если без файлов всё прошло хорошо
[hr]
UPD
выявил ошибку, сейчас исправлю
[hr]
Скачать исправленное, проблема была в процентах. (http://rghost.ru/15102071)
:bow:
Rikill, Спасибо огромное!!! Работает!
Dark_Delphin
19-07-2011, 22:17
Всем добрый вечер)!
Что нужно добавить в эту строку что-бы текстура мюзикбутон была поверх всего?
BASS_Init(ExpandConstant('{tmp}\Music.mp3')) // музыку
BASS_CreateOnOffButton(ExpandConstant('{tmp}\MusicButton.png'), 185, 325, 27, 27, 4) // вкл/выкл
ntrx,
var
MusicButton, mp3Handle: HWND;
mp3Name: String;
const
BASS_ACTIVE_PAUSED = 3;
BASS_SAMPLE_LOOP = 4;
#include "models\botva2.iss"
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: PAnsiChar; 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_Pause: Boolean; external 'BASS_Pause@files:BASS.dll stdcall delayload';
function BASS_Stop: Boolean; external 'BASS_Stop@files:BASS.dll stdcall delayload';
function BASS_Free: Boolean; external 'BASS_Free@files:BASS.dll stdcall delayload';
procedure MusicButtonClick(hBtn:HWND);
begin
if BtnGetChecked(MusicButton) then BASS_ChannelPause(mp3Handle)
else if BASS_ChannelIsActive(mp3Handle)=BASS_ACTIVE_PAUSED then BASS_ChannelPlay(mp3Handle, False);
end;
function InitializeSetup:boolean;
begin
if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
if not FileExists(ExpandConstant('{tmp}\innocallback.dll')) then ExtractTemporaryFile('innocallback.dll');
Result:=True;
end;
procedure InitializeWizard;
begin
ExtractTemporaryFile('Music.mp3');
ExtractTemporaryFile('MusicButton.png');
ExtractTemporaryFile('BASS.dll');
MusicButton:=BtnCreate(WizardForm.Handle,ScaleX(50),ScaleY(50),ScaleX(36),ScaleY(36),ExpandConstant( '{tmp}\MusicButton.png'),0,True);
BtnSetEvent(MusicButton,BtnClickEventID,WrapBtnCallback(@MusicButtonClick,1));
BtnSetVisibility(MusicButton,True);
BtnSetCursor(MusicButton,GetSysCursorHandle(32649));
mp3Name:=ExpandConstant('{tmp}\Music.mp3');
BASS_Init(-1,44100,0,0,0);
mp3Handle:=BASS_StreamCreateFile(FALSE,PAnsiChar(mp3Name),0,0,BASS_SAMPLE_LOOP);
BASS_Start;
BASS_ChannelPlay(mp3Handle,False);
end;
procedure DeinitializeSetup;
begin
BASS_Stop;
BASS_Free;
gdipShutdown;
end;
удали старое всё, кроме файла botva2.iss. BASS_Module.iss можешь удалить, эта кнопка проявляется везде, мне помогло
старый bass.dll замени этим (http://rghost.ru/15120611)
доделал
[hr]
короче этот скрипт для кода у которого используется
WizardForm.InnerNotebook.Hide;
WizardForm.OuterNotebook.Hide;
нужны файлы:
botva2.iss
Music.mp3
MusicButton.png
BASS.dll
botva2.dll
innocallback.dll
Neutron, это пока не твой уровень, советую просто переделать скрипт от юршата или этот http://rghost.ru/5496789
[hr]
ок, тогда скачивай от юршата и проявляй страницы как там
пример:
[CustomMessages]
russian.Welcome1=Дарова Васяня!
[код]
var
WelcomeLabel1: TLabel
procedure InitializeWizard();
begin
WelcomeLabel1:= TLabel.Create(WizardForm);
with WelcomeLabel1 do begin
AutoSize:=False;
SetBounds(ScaleX(100), ScaleY(85), ScaleX(350), ScaleY(45));
WordWrap:=True;
Alignment := taCenter;
Transparent:=True;
Font.Name:='Comic Sans MS';
Font.Size:= 11;
Font.Color:=$FFFFFF;
Caption:= ExpandConstant('{cm:Welcome1}');
Parent:=WizardForm;
end;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
WelcomeLabel1.hide;
case CurPageID of
wpWelcome: begin
WelcomeLabel1.Show;
end;
end;
[hr]
скачивать скрипт от юршата для того чтобы смотреть как там сделаны страницы!!!!
Neutron, Если я понял, то тебе нужен статус панель на ботве то вот пример:
Скачать статус панель от Shegorat (http://narod.ru/disk/7844367001/STS_v.1.0.rar.html)
P.S> Там разобратся не трудно!
murlakatamenka
21-07-2011, 15:31
Лександер, а можешь ГОГ доделанный выложить. Я almost_completed доделал немного (подправил лэйблы, сместил прогресс бар повыше, доделал отмену установки), но дальше влом. Как-то гуглил и видел что andrew0812 на одном из форумов тебе скидывал (ты ведь Лександер aka Gnom :))
Johny777
22-07-2011, 14:10
Подскажите пожалуйста как растянуть внутренне окно окно
в дизайнере не активно
http://s50.radikal.ru/i129/1107/37/5c69c8346650.jpg
Всем добрый день. Ребята, нужна помощь.
Есть скрипт декодирования OGG в WAV
-------------------------------------------------------------------------------------------
[Setup]
AppName=RecodeOgg
AppVerName=RecodeOgg
OutputDir=.
OutputBaseFilename=RecodeOgg
DefaultDirName={pf}\RecodeOgg
AppendDefaultDirName=False
DisableDirPage=True
[files]
Source: oggdec.exe; DestDir: {app};
Source: oggs\*; DestDir: {app};
Source: oggs\*; DestDir: {app}\Data;
[code]
var
Files: Array of String;
S: String;
n: Integer;
Function StringToArray(Text, Cut: String): array of String; var i, k: Integer;
Begin
SetArrayLength(Result, 0); if Cut = '' then Cut:= #1310; //если шаблон пуст, считаем переводы строк
Repeat k:= Pos(Cut,Text);
if k = 1 then begin Delete(Text, 1, Length(Cut)); CONTINUE
end;
SetArrayLength(Result, GetArrayLength(Result) +1); i:= GetArrayLength(Result) -1;
if k = 0 then
Result[i]:=Text
else begin
Result[i]:= Copy(Text, 1, k -1); Delete(Text, 1, Length(Result[i]) + Length(Cut));
end;
Until Length(Text) * k = 0;
End;
procedure FindFiles(FromDir: String; Mask: String);
var FSR, DSR: TFindRec; FindResult: Boolean;
begin
FindResult:= FindFirst(AddBackslash(FromDir)+Mask, FSR)
while FindResult do begin
if FSR.Attributes and FILE_ATTRIBUTE_DIRECTORY = 0 then begin
S:= S + AddBackslash(fromDir) + FSR.Name +'|';
end;
FindResult:= FindNext(FSR);
end;
FindResult:= FindFirst(AddBackslash(FromDir)+ '*.*', DSR)
while FindResult do begin
if ((DSR.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) and not ((DSR.Name = '.') or (DSR.Name = '..')) then begin
FindFiles(AddBackSlash(FromDir)+ DSR.Name, Mask)
end;
FindResult:= FindNext(DSR);
end;
FindClose(FSR); FindClose(DSR)
end;
procedure RecodeOgg;
var ResultCode: integer; CurFile: String;
begin
FindFiles(ExpandConstant('{app}'), '*.ogg') //Находим все файлы по маске, в выбранной папке
Files:= StringToArray(S, '|') //Переводим в массив
WizardForm.ProgressGauge.Max:= GetArrayLength(Files)-1; //Получаем кол-во файлов
for n:=(GetArrayLength(Files)-1) downto 0 do begin
CurFile:= Files[n]
StringChange(CurFile, AddBackslash(ExpandConstant('{app}')), '')
Exec(ExpandConstant('{app}\oggdec.exe'), '-Q '+ AddQuotes(CurFile), '', SW_Hide, EwWaitUntilTerminated, ResultCode) //Для каждого файла запускаем декодер
DeleteFile(Files[n]) //Удаляем ненужный файл
WizardForm.FilenameLabel.Caption:= Files[n]; //Двигаем прогрессбар
WizardForm.ProgressGauge.Position:= WizardForm.ProgressGauge.Position +1;
end;
DeleteFile(ExpandConstant('{app}\oggdec.exe'))
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then
begin
WizardForm.ProgressGauge.Position := 0;
WizardForm.StatusLabel.Caption := 'Извлечение аудио файлов...';
RecodeOgg;
end;
end;
-------------------------------------------------------------------------------------------
возможно как-то сделать, что бы не велся поиск файлов OGG, а брался из списка,
например из ogglist.txt, в котором прописаны пути к каждому файлу:
"Voice\voice true\true.ogg"
"NBK\345.ogg"
"SOUNDS\over voice\hard drum.ogg"
"SOUNDS\music\123.ogg"
"SOUNDS\terminal future\small f.ogg"
.
.
.
"SOUNDS\terminal future\big.ogg"
Еще есть библиотека bass.dll последней версии v.2.4.7 и приведен пример для использования музыки MP3. Но она еще умеет трэкерную музыку воспроизводить MOD, IT, S3M. Может кто-то набросать пример использования этих трэкерных форматов?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.