Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]
Gnom_aka_Lexander
02-07-2011, 20:43
это возможно там где он может перезаписать файл. »
Я знаю :) в любом случае, я не вижу других возможностей реализации отвязать количество запусков от определенной машины :)
No4noylis, Пример готового скрипта (http://www.forum.oszone.ru/post-1409866-1784.html) .
Первое возможно только если инсталлятор находится на жд либо на флешке, т.е там где он может себя перезаписать »
В 99% процентов случаев, он будет на диске на котором он сможет себя перезаписать. Как проверить? Пытаемся создать обычный текстовый файл рядом с инсталлятором, если файл создался, то значит и удалить и перезаписать инсталлятор можно.
точнее добавить часть данных в конец собственного файла »
Можно конечно и так, но здесь есть одна штука, а именно, пользователь, который работает с файлами через Total Commander или другой файловый менеджер, увидит, что файл перезаписан...
Самый оптимальный вариант, это контролировать через реестр + плюс кинуть файл информации в разные папки Temp и при запуске инсталлятора проверять все варианты.
я не вижу других возможностей реализации отвязать количество запусков от определенной машины »
Есть ещё один вариант :), это инсталлятор обращается на сервер своей проги, которую он устанавливает, при этом передавая все свои данные и спрашивает у него, при отрицательном ответе инсталлятор просто само удаляется...
Лександер, Shegorat и Serega раз не получится сделать самоудаление инсталла через определенное кол-во установок, то может можно привязать это к дате и времени? Допустим, он нормально функционирует, до 23.00 01.01.2012г., а потом выдает сообщение, например "Error" и самоудаляется бесследно (как в предыдущем примере, который предлагал Shegorat) .
Gnom_aka_Lexander
03-07-2011, 07:34
TRMK, можно. на руборде тебе уже ответили, как это сделать. вариант с привязкой к серверу интересен, но не отвязывает инсталл от определенной машины, либо выдавать номерные инсталлы, что довольно геморно. А вот делать количество установок на одной машине с опорой на сервер - идеальный вариант- взломать ограничение будет почти невозможно, для этого придется ломать сервер, на котором лежит лог со счетчиком установок на каждой машине. Только придется делать пароли и выдавать каждому свой, либо делать опору на ид железа.
Tо может можно привязать это к дате и времени? Допустим, он нормально функционирует, до 23.00 01.01.2012г., а потом выдает сообщение, например "Error". » В шапке (Коллекция скриптов) как раз есть такой скрипт. Скрипт Dobrova, InstallTimeLimit .
а как в распаковшике вреарке изменить кнопку завершить
No4noylis
03-07-2011, 15:38
Как добавить в инсталлятор *.png изображение????
Доброго времени суток!!! Ребята помогите подалуйста решить проблемку)Вот скрипт
#define MyAppName "Assassin s Creed II"
[Setup]
SourceDir=.
OutputDir=Setup
AppName={#MyAppName}
AppVerName={#MyAppName}
AppVersion=Assassin's Creed II
AppPublisher=Ubisoft Inc.
AppCopyright=Ubisoft Inc.
DefaultDirName={pf}\Assassin's Creed II
DefaultGroupName=Assassin's Creed II
AllowNoIcons=yes
OutputBaseFilename=setup
WizardImageFile=C:\fon.bmp
WizardSmallImageFile=C:\small.bmp
SetupIconFile=D:\Мои Документы\RePack(и)\1.ico
WindowVisible=no
WindowShowCaption=no
WindowResizable=no
Compression=none
SolidCompression=true
DiskSpanning=yes
DiskSliceSize=734003200
SlicesPerDisk=1
InternalCompressLevel=none
MergeDuplicateFiles=false
[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl
[CustomMessages]
rus.Welcome1=Вас приветствует Мастер установки игры
rus.Welcome2=Нажмите «Далее», чтобы продолжить, или «Отмена», %nчтобы выйти из программы установки.
rus.Finished1=Установка игры {#MyAppName} успешно завершена.
rus.Finished2=Игра {#MyAppName} была успешно установлена на Ваш компьютер. %n%nДля ее запуска выберите соответствующий ярлык в меню «Пуск» или на Рабочем столе.
rus.Finished3=Нажмите «Завершить», чтобы выйти из программы установки.
[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}
Name: additional; Description: Дополнительное ПО
Name: additional\dx; Description: "Обновить DirectX "; Flags: unchecked
[Files]
Source: ISSkin.dll; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: steam.cjstyles; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\1.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\10.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\11.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\12.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\13.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\14.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\15.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\16.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\17.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\18.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\2.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\3.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\4.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\5.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\6.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\7.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\8.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Slides\9.jpg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: isgsg.dll; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: bass.dll; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Мои Документы\RePack(и)\Music\assassins creed.mp3; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: D:\Игры\Assassin's Creed II\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension
[Icons]
Name: {group}\Assassin's Creed II; Filename: {app}\AssassinsCreedIIGame.exe; WorkingDir: {app}
Name: {userdesktop}\Assassin's Creed II; Filename: {app}\AssassinsCreedIIGame.exe; WorkingDir: {app}; Tasks: desktopicon
Name: {group}\{cm:UninstallProgram,Assassin's Creed II}; Filename: {uninstallexe}
[Run]
Filename: {src}\Redist\DirectX\DXSETUP.exe; Tasks: additional\dx; StatusMsg: Установка DirectX
Filename: {app}\Pack 1.exe; WorkingDir: {app}; Parameters: -x -y -s2 -d.; StatusMsg: Идет распаковка файлов ...; Flags: runminimized runasoriginaluser
Filename: {app}\Pack 2.exe; WorkingDir: {app}; Parameters: -x -y -s2 -d.; StatusMsg: Идет распаковка файлов ...; Flags: runminimized runasoriginaluser
Filename: {app}\Pack 3.exe; WorkingDir: {app}; Parameters: -x -y -s2 -d.; StatusMsg: Идет распаковка файлов ...; Flags: runminimized runasoriginaluser
Filename: {app}\Pack 4.exe; WorkingDir: {app}; Parameters: -x -y -s2 -d.; StatusMsg: Идет распаковка файлов ...; Flags: runminimized runasoriginaluser
Filename: {app}\Pack 5.exe; WorkingDir: {app}; Parameters: -x -y -s2 -d.; StatusMsg: Идет распаковка файлов ...; Flags: runminimized runasoriginaluser
Filename: {app}\Pack 6.exe; WorkingDir: {app}; Parameters: -x -y -s2 -d.; StatusMsg: Идет распаковка файлов ...; Flags: runminimized runasoriginaluser
Filename: cmd.exe; WorkingDir: {app}; Parameters: /C del /F /Q Pack 1.exe; Flags: runhidden runasoriginaluser
Filename: cmd.exe; WorkingDir: {app}; Parameters: /C del /F /Q Pack 2.exe; Flags: runhidden runasoriginaluser
Filename: cmd.exe; WorkingDir: {app}; Parameters: /C del /F /Q Pack 3.exe; Flags: runhidden runasoriginaluser
Filename: cmd.exe; WorkingDir: {app}; Parameters: /C del /F /Q Pack 4.exe; Flags: runhidden runasoriginaluser
Filename: cmd.exe; WorkingDir: {app}; Parameters: /C del /F /Q Pack 5.exe; Flags: runhidden runasoriginaluser
Filename: cmd.exe; WorkingDir: {app}; Parameters: /C del /F /Q Pack 6.exe; Flags: runhidden runasoriginaluser
[UninstallDelete]
Type: filesandordirs; Name: {app}
[Code]
var
PageNameLabel, PageDescriptionLabel, WelcomeLabel1, WelcomeLabel2, FinishedHeadingLabel, FinishedLabel: TLabel;
const
Indent=25;
function GetWindowLong(hWnd: HWND; nIndex: Integer): Longint; external 'GetWindowLongA@user32.dll stdcall delayload';
function ssInitialize(hParent:HWND;ssTimeShow:integer;FadeOut:boolean;StretchMode:integer;BkgColor:DWORD):boo lean; external 'ssInitialize@files:isgsg.dll stdcall delayload';
procedure ssDeInitialize; external 'ssDeInitialize@files:isgsg.dll stdcall delayload';
procedure ssSetBkgImage(FileName:PChar); external 'ssSetBkgImage@files:isgsg.dll stdcall delayload';
procedure ssAddImage(FileName:PChar); external 'ssAddImage@files:isgsg.dll stdcall delayload';
procedure ssStartShow; external 'ssStartShow@files:isgsg.dll stdcall delayload';
procedure ssStopShow; external 'ssStopShow@files:isgsg.dll stdcall delayload';
function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload';
procedure ShowMP3Panel(hMainFrm:HWND;StartVolume:integer;DefMP3Dir,BASSDir,MLabel:PChar;IsShowMP3Info,IsBkgFrm Visible:boolean;ShowTimeMP3Info:integer;dBottom:integer);external 'ShowMP3Panel@files:isgsg.dll stdcall';
procedure KillMP3Panel;external 'KillMP3Panel@files:isgsg.dll stdcall';
procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@files:isskin.dll stdcall';
procedure UnloadSkin(); external 'UnloadSkin@files:isskin.dll stdcall';
function ShowWindow(hWnd: Integer; uType: Integer): Integer; external 'ShowWindow@user32.dll stdcall';
function InitializeSetup:boolean;
begin
ExtractTemporaryFile('assassins creed.mp3');
ExtractTemporaryFile('bass.dll');
ExtractTemporaryFile('steam.cjstyles');
LoadSkin(ExpandConstant('{tmp}')+'\steam.cjstyles', '');
Result:=True;
end;
procedure InitializeWizard;
begin
ShowMP3Panel(WizardForm.Handle,80,ExpandConstant('{tmp}'),ExpandConstant('{tmp}'),'Assassins Creed II',True,True,7000,Indent);
ssInitialize(GetWindowLong(MainForm.Handle,-8),20,True,2,$FF000000);
ExtractTemporaryFile('1.jpg');
ssSetBkgImage(ExpandConstant('{tmp}')+'\1.jpg');
WizardForm.BeveledLabel.Enabled:=True;
PageNameLabel:= TLabel.Create(WizardForm);
with PageNameLabel do
begin
Left:= ScaleX(110);
Top:= ScaleY(10);
Width:= ScaleX(370);
Height:= ScaleY(14);
AutoSize:= False;
WordWrap:= True;
Font.Name:= 'Georgia';
Font.Color:= $fffff;
Font.Style:= [fsBold];
ShowAccelChar:= False;
Transparent:= True;
Parent:= WizardForm.MainPanel;
end;
PageDescriptionLabel:= TLabel.Create(WizardForm);
with PageDescriptionLabel do
begin
Left:= ScaleX(130);
Top:= ScaleY(25);
Width:= ScaleX(330);
Height:= ScaleY(30);
AutoSize:= False;
WordWrap:= True;
Font.Name:= 'Georgia';
Font.Color:= $ffffff;
Font.Style:= [fsItalic];
ShowAccelChar:= False;
Transparent:= True;
Parent:= WizardForm.MainPanel;
end;
////////////////////// begin WelcomePage //////////////////////
WelcomeLabel1:= TLabel.Create(WizardForm);
with WelcomeLabel1 do begin
AutoSize:=False;
SetBounds(ScaleX(-30), ScaleY(10), ScaleX(550), ScaleY(65));
WordWrap:=True;
Alignment := taCenter;
Transparent:=True;
Font.Name:='Georgia';
Font.Size:= 13;
Font.Color:=$ffffff;
Font.Style:=[fsBold];
Caption:= ExpandConstant('{cm:Welcome1}')+#13#10+('{#MyAppName}');
Parent:=WizardForm.WelcomePage;
end;
WelcomeLabel2:=TLabel.Create(WizardForm);
with WelcomeLabel2 do begin
AutoSize:=False;
SetBounds(ScaleX(25), ScaleY(270), ScaleX(450), ScaleY(200));
WordWrap:=True;
Alignment := taCenter;
Transparent:=True;
Font.Name:='Georgia';
Font.Size:= 10;
Font.Color:=$ffffff;
Font.Style := [fsBold, fsItalic];
Caption:= ExpandConstant('{cm:Welcome2}');
Parent:=WizardForm.WelcomePage;
end;
////////////////////// end WelcomePage //////////////////////
////////////////////// begin FinishedPage //////////////////////
FinishedHeadingLabel:= TLabel.Create(WizardForm);
with FinishedHeadingLabel do begin
SetBounds(ScaleX(-30), ScaleY(10), ScaleX(550), ScaleY(65));
AutoSize:= false;
Alignment := taCenter;
Transparent:= true;
WordWrap:= true;
Font.Name:='Georgia';
Font.Size:= 13;
Font.Color:=$ffffff;
Font.Style := [fsBold];
Caption:= ExpandConstant('{cm:Finished1}');
Parent:=WizardForm.FinishedPage;
end;
FinishedLabel:=TLabel.Create(WizardForm);
with FinishedLabel do begin
AutoSize:=False;
SetBounds(ScaleX(25), ScaleY(160), ScaleX(450), ScaleY(200));
WordWrap:=True;
Alignment := taCenter;
Transparent:=True;
Font.Name:='Georgia';
Font.Size:= 10;
Font.Color:=$ffffff;
Font.Style := [fsBold, fsItalic];
Caption:= ExpandConstant('{cm:Finished2}'+#13#10+'{cm:Finished3}');
Parent:=WizardForm.FinishedPage;
end;
////////////////////// end FinishedPage //////////////////////
with WizardForm do begin
WelcomeLabel1.Hide;
WelcomeLabel2.Hide;
FinishedLabel.Hide;
FinishedHeadingLabel.Hide;
PageNameLabel.Hide;
PageDescriptionLabel.Hide;
with WizardBitmapImage do begin
Top:= ScaleY(0);
Left:= ScaleX(0);
Width:= ScaleX(497);
Height:= ScaleY(313);
Stretch:= true;
end;
with WizardBitmapImage2 do begin
Top:= ScaleY(0);
Left:= ScaleX(0);
Width:= ScaleX(497);
Height:= ScaleY(313);
Stretch:= true;
end;
with MainPanel do begin
with WizardSmallBitmapImage do begin
Top:= ScaleY(0);
Left:= ScaleX(0);
Width:= Mainpanel.Width;
Height:= MainPanel.Height;
end;
end;
end;
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep=ssInstall then begin
ExtractTemporaryFile('1.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\1.jpg');
ExtractTemporaryFile('2.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\2.jpg');
ExtractTemporaryFile('3.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\3.jpg');
ExtractTemporaryFile('4.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\4.jpg');
ExtractTemporaryFile('5.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\5.jpg');
ExtractTemporaryFile('6.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\6.jpg');
ExtractTemporaryFile('7.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\7.jpg');
ExtractTemporaryFile('8.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\8.jpg');
ExtractTemporaryFile('9.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\9.jpg');
ExtractTemporaryFile('10.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\10.jpg');
ExtractTemporaryFile('11.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\11.jpg');
ExtractTemporaryFile('12.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\12.jpg');
ExtractTemporaryFile('13.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\13.jpg');
ExtractTemporaryFile('14.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\14.jpg');
ExtractTemporaryFile('15.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\15.jpg');
ExtractTemporaryFile('16.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\16.jpg');
ExtractTemporaryFile('17.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\17.jpg');
ExtractTemporaryFile('18.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\18.jpg');
ssStartShow;
end;
if CurStep=ssPostInstall then ssStopShow;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
PageNameLabel.Caption:= WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption:= WizardForm.PageDescriptionLabel.Caption;
if CurPageID=wpInstalling then begin
WizardForm.MainPanel.Visible:=False;
WizardForm.Bevel1.Visible:=False;
WizardForm.Width:=ScaleX(395);
WizardForm.Height:=ScaleY(142);
WizardForm.Left:=ScaleX(GetSystemMetrics(0)-WizardForm.Width-Indent);
WizardForm.Top:=ScaleY(GetSystemMetrics(1)-WizardForm.Height-Indent);
WizardForm.InnerNotebook.Left:=ScaleX(10);
WizardForm.InnerNotebook.Top:=ScaleY(10);
WizardForm.InnerNotebook.Width:=ScaleX(370);
WizardForm.StatusLabel.Left:=ScaleX(0);
WizardForm.StatusLabel.Top:=ScaleY(0);
WizardForm.StatusLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.FileNameLabel.Left:=ScaleX(0);
WizardForm.FileNameLabel.Top:=ScaleY(20);
WizardForm.FileNameLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.ProgressGauge.Top:=ScaleY(40);
WizardForm.ProgressGauge.Width:=WizardForm.InnerNotebook.Width;
WizardForm.CancelButton.Left:=ScaleX(154);
WizardForm.CancelButton.Top:=ScaleY(80);
end;
if (CurPageID=wpFinished) or (CurPageID=wpInfoAfter) then begin
if WizardForm.Width<>502 then begin
WizardForm.Visible:=False;
WizardForm.Width:=ScaleX(502);
WizardForm.Height:=ScaleY(392);
WizardForm.Left:=(GetSystemMetrics(0)-WizardForm.Width) div 2;
WizardForm.Top:=(GetSystemMetrics(1)-WizardForm.Height) div 2;
WizardForm.MainPanel.Visible:=True;
WizardForm.Bevel1.Visible:=True;
WizardForm.InnerNotebook.Left:=ScaleX(40);
WizardForm.InnerNotebook.Top:=ScaleY(72);
WizardForm.InnerNotebook.Width:=ScaleX(417);
WizardForm.Visible:=True;
end;
end;
end;
procedure DeinitializeSetup;
begin
KillMP3Panel;
ShowWindow(WizardForm.Handle,0);
UnloadSkin();
ssDeInitialize;
end;
так проблемка в том что после установки, сам установщик самораспаковывающиеся фриарк архивы не удаляет, не знаю как исправить)))
А можно ли все это в один прогресс бар запихнуть???? Если да то подскажите пожалуйста
Заранее спасибо)
No4noylis, botva2 Тебе в помощь, там есть примеры вот и учись по ним =)
Скачать (http://ifolder.ru/22008153)
frion, Если я правельно понял то можно эти архивы удалить так
procedure CurStepChanged(CurStep: TSetupStep);
begin
{Удаления архивов из папки данной программы}
DeleteFile(ExpandConstant('{app}\Pack 1.exe'));
DeleteFile(ExpandConstant('{app}\Pack 2.exe'));
DeleteFile(ExpandConstant('{app}\Pack 3.exe'));
DeleteFile(ExpandConstant('{app}\Pack 4.exe'));
DeleteFile(ExpandConstant('{app}\Pack 5.exe'));
DeleteFile(ExpandConstant('{app}\Pack 6.exe'));
end;
З.Ы - Наклепал по памяти, но думаю должно помочь =)
No4noylis
03-07-2011, 22:37
No4noylis, botva2 Тебе в помощь, там есть примеры вот и учись по ним
Скачать »
можешь загрузить на другой файлообенник, отсюда не скачиваеться(((((((
valyok666
03-07-2011, 22:38
кому нужны кнопочки вот вам парочку)
кнопки (http://rghost.ru/13355011/private/e3ff34bb1fbab119eb3c05d831271e71)
можешь загрузить на другой файлообенник, отсюда не скачиваеться((((((( »
Вот скачивай (http://narod.ru/disk/7844037001/botva2_0.9.5.130.7z.html)
valyok666
03-07-2011, 22:43
No4noylis,
чё не качается я только что качал оттуда)
valyok666
03-07-2011, 23:00
у кого нить валяется скрипт mafia2??
valyok666
04-07-2011, 12:53
кто нибудь знает что нибудь про 3Д скрипт???у меня сетуп есть но его не распаковать через unpacker((((
zero 414
04-07-2011, 13:15
народ помогите вот я запаковал нужные файлы в FreeArc у меня получилось так название файла .arc потом поставил в скрипт код этот и получаеться я рядом с инстралятором бросай этот файл который запаковал и он его распаковывает а как мне сделать чтобы скрип запаковал этот файл например вот так game-1.bin и потом распаковал?
Когда в фриарке пакуешь, то вместо "назвение файла.arc" пиши game-1.bin
VinTagE, спасибо помогло!!
Подскажите пожалуйста,
Есть галочка до начала установки, на нее навешан presetup.bat файл. Можно ли сделать так, чтобы он выполнился до распаковки (главной инсталляции) да еще и без окна консоли?
R.i.m.s.k.y.
04-07-2011, 15:36
leshcat примерно так
[Files]
Source: "presetup.bat"; Flags: dontcopy
*[*Code]
procedure InitializeWizard();
var ErrorCode: integer
begin
...
ExtractTemporaryFile('presetup.bat');
ShellExec('', ExpandConstant('{tmp}\presetup.bat'), '', '', SW_HIDE, ewNoWait, ErrorCode)
...
end;
R.i.m.s.k.y.
04-07-2011, 16:16
найди в этом скрипте условие на повление/работу кнопки и добавь условие, делов то
или давай скрипт сюда, я гляну глазком, если соображу - отвечу
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.