Показать полную графическую версию : [архив] Скрипты Inno Setup. Помощь и советы [часть 2]
A1EXXX, спасибо. Нашел решение.
[Icons] Name: "{group}\Видео"; Filename: "{app}\Crystal.exe"; Parameters: "movie.avi"; WorkingDir: "{app}"; Tasks: groupicon
Serega, не совсем ясно я объяснил... ранее, без добавления ваших измнений. т.е. кнопок - я благополучно выделял галочки руками, у меня менялся сразу необходимый размер на диске, и при повторном запуске этого инсталлятора - он мне отображал уже установленные галочки тех компонентов, что я выбрал.
Такое не изменилось после добавления кнопок, но они не корректны, а именно, повторюсь: при выделениее всех компонент, размер не перессчитывается. хотя действительно, компоненты установились, и при повторной установке поверх - инсталлятор не отображает компоненты, которые я уже установил...
_Monster_
18-09-2009, 20:07
Здравствуйте! 3 вопроса
1) как сделать мини прогресс бар http://pic.ipicture.ru/uploads/090918/aE767v7uzj.png
2) как изменить цвет самого инстолятора (полностью черный например)
3) когда я захожу пуск-> прграммы у меня присутствует только главный файл запуска http://pic.ipicture.ru/uploads/090918/3fUug68pGr.png
а как сделать чтобы можно отсюда же и удалить программу
Жду ваших ответов!спасибо
Кто знает, как сделать отступ между "Созданием ярлыков" и "Языком игры" ??? http://i019.radikal.ru/0909/92/7129cca117d4t.jpg (http://radikal.ru/F/i019.radikal.ru/0909/92/7129cca117d4.jpg.html)
_Monster_
19-09-2009, 17:07
A1EXXX кстати нашел твой пост где цвет инсталятора можно поменять спасибо.
_Monster_
19-09-2009, 17:43
кто подскажет? как можно изменить эту белую папку http://pic.ipicture.ru/uploads/090919/thumbs/tY653YfTlw.png (http://ipicture.ru/Gallery/Viewfull/23978019.html) на мою серую с черным фоном :)
_Monster_, два варианта:
1) прикрутить внешнюю bmp картинку
[Files]
Source: C:\papka.bmp; DestDir: {tmp}; Flags: dontcopy
[code]
procedure InitializeWizard();
begin
ExtractTemporaryFile('papka.bmp');
WizardForm.SelectDirBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectDirBitmapImage.AutoSize:=true;
WizardForm.SelectGroupBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectGroupBitmapImage.AutoSize:=true;
end; например, вот эту... (http://s45.radikal.ru/i110/0909/11/dad99ef1d033.bmp)
2) Либо вот этим кодом:
[Code]
function GetModuleHandle(lpModuleName: LongInt): LongInt;
external 'GetModuleHandleA@kernel32.dll stdcall';
function ExtractIcon(hInst: LongInt; lpszExeFileName: PChar; nIconIndex: LongInt): LongInt;
external 'ExtractIconA@shell32.dll stdcall';
function DrawIconEx(hdc: LongInt; xLeft, yTop: Integer; hIcon: LongInt; cxWidth, cyWidth: Integer; istepIfAniCur, hbrFlickerFreeDraw, diFlags: LongInt): LongInt;
external 'DrawIconEx@user32.dll stdcall';
procedure InitializeWizard();
var
Rect: TRect;
HIcon: LongInt;
begin
hIcon := ExtractIcon(GetModuleHandle(0), ExpandConstant('{sys}\shell32.dll'), 3);
with WizardForm.SelectDirBitmapImage do
begin
with Bitmap do
begin
Width := ScaleX(32);
Height := ScaleY(32);
Rect.Right := ScaleX(32);
Rect.Bottom := ScaleY(32);
Rect.Left := ScaleX(0);
Rect.Top := ScaleY(0);
Canvas.Brush.Color := clBlack;
Canvas.FillRect(Rect);
DrawIconEx(Canvas.Handle, 0, 0, HIcon, 32, 32, 0, 0, 3);
end;
end;
end;
как сделать мини прогресс бар »
Рисуете свою форму и в момент инсталляции скрываете форму инсталлятора и активируете свою, после инсталляции прячете свою форму, а форму мастера делаете видимой.
а как сделать чтобы можно отсюда же и удалить программу »
Добавьте в секцию [Icons]:
Name: {group}\Удалить программу; Filename: {uninstallexe}
_Monster_
19-09-2009, 20:58
ну вот опять вопрос :( не могу соеденить черный фон с серой папкой которую дал A1EXXX (ругается на procedure InitializeWizard(); т.к их в секции 2-ое, по отдельности каждый код работает)
[code]
[Files]
Source: C:\papka.bmp; DestDir: {tmp}; Flags: dontcopy
[code]
procedure InitializeWizard();
begin
ExtractTemporaryFile('papka.bmp');
WizardForm.SelectDirBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectDirBitmapImage.AutoSize:=true;
WizardForm.SelectGroupBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectGroupBitmapImage.AutoSize:=true;
end;
const
Color = clblack;
procedure InitializeWizard();
begin
WizardForm.Font.Color:=clWhite;
WizardForm.Color:=Color;
WizardForm.WelcomePage.Color:=Color;
WizardForm.InnerPage.Color:=Color;
WizardForm.FinishedPage.Color:=Color;
WizardForm.LicensePage.Color:=Color;
WizardForm.PasswordPage.Color:=Color;
WizardForm.InfoBeforePage.Color:=Color;
WizardForm.UserInfoPage.Color:=Color;
WizardForm.SelectDirPage.Color:=Color;
WizardForm.SelectComponentsPage.Color:=Color;
WizardForm.SelectProgramGroupPage.Color:=Color;
WizardForm.SelectTasksPage.Color:=Color;
WizardForm.ReadyPage.Color:=Color;
WizardForm.PreparingPage.Color:=Color;
WizardForm.InstallingPage.Color:=Color;
WizardForm.InfoAfterPage.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.DiskSpaceLabel.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.GroupEdit.Color:=Color;
WizardForm.PasswordLabel.Color:=Color;
WizardForm.PasswordEdit.Color:=Color;
WizardForm.PasswordEditLabel.Color:=Color;
WizardForm.ReadyMemo.Color:=Color;
WizardForm.TypesCombo.Color:=Color;
WizardForm.WelcomeLabel1.Color:=Color;
WizardForm.InfoBeforeClickLabel.Color:=Color;
WizardForm.MainPanel.Color:=Color;
WizardForm.PageNameLabel.Color:=Color;
WizardForm.PageDescriptionLabel.Color:=Color;
WizardForm.ReadyLabel.Color:=Color;
WizardForm.FinishedLabel.Color:=Color;
WizardForm.YesRadio.Color:=Color;
WizardForm.NoRadio.Color:=Color;
WizardForm.WelcomeLabel2.Color:=Color;
WizardForm.LicenseLabel1.Color:=Color;
WizardForm.InfoAfterClickLabel.Color:=Color;
WizardForm.ComponentsList.Color:=Color;
WizardForm.ComponentsDiskSpaceLabel.Color:=Color;
WizardForm.BeveledLabel.Color:=Color;
WizardForm.StatusLabel.Color:=Color;
WizardForm.FilenameLabel.Color:=Color;
WizardForm.SelectDirLabel.Color:=Color;
WizardForm.SelectStartMenuFolderLabel.Color:=Color;
WizardForm.SelectComponentsLabel.Color:=Color;
WizardForm.SelectTasksLabel.Color:=Color;
WizardForm.LicenseAcceptedRadio.Color:=Color;
WizardForm.LicenseNotAcceptedRadio.Color:=Color;
WizardForm.UserInfoNameLabel.Color:=Color;
WizardForm.UserInfoNameEdit.Color:=Color;
WizardForm.UserInfoOrgLabel.Color:=Color;
WizardForm.UserInfoOrgEdit.Color:=Color;
WizardForm.PreparingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Color:=Color;
WizardForm.UserInfoSerialLabel.Color:=Color;
WizardForm.UserInfoSerialEdit.Color:=Color;
WizardForm.TasksList.Color:=Color;
WizardForm.RunList.Color:=Color;
WizardForm.SelectDirBrowseLabel.Color:=Color;
WizardForm.SelectStartMenuFolderBrowseLabel.Color:=Color;
end;
http://i078.radikal.ru/0909/a4/f877a6add549t.jpg (http://radikal.ru/F/i078.radikal.ru/0909/a4/f877a6add549.jpg.html)
Новый FreeArc v0.52 (http://freearc.org/download/testing/FreeArc-0.52-win32.exe)...
_Monster_, пробуй...
[Files]
Source: C:\papka.bmp; DestDir: {tmp}; Flags: dontcopy
[code]
const
Color = clblack;
procedure InitializeWizard();
begin
ExtractTemporaryFile('papka.bmp');
WizardForm.SelectDirBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectDirBitmapImage.AutoSize:=true;
WizardForm.SelectGroupBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectGroupBitmapImage.AutoSize:=true;
WizardForm.Font.Color:=clWhite;
WizardForm.Color:=Color;
WizardForm.WelcomePage.Color:=Color;
WizardForm.InnerPage.Color:=Color;
WizardForm.FinishedPage.Color:=Color;
WizardForm.LicensePage.Color:=Color;
WizardForm.PasswordPage.Color:=Color;
WizardForm.InfoBeforePage.Color:=Color;
WizardForm.UserInfoPage.Color:=Color;
WizardForm.SelectDirPage.Color:=Color;
WizardForm.SelectComponentsPage.Color:=Color;
WizardForm.SelectProgramGroupPage.Color:=Color;
WizardForm.SelectTasksPage.Color:=Color;
WizardForm.ReadyPage.Color:=Color;
WizardForm.PreparingPage.Color:=Color;
WizardForm.InstallingPage.Color:=Color;
WizardForm.InfoAfterPage.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.DiskSpaceLabel.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.GroupEdit.Color:=Color;
WizardForm.PasswordLabel.Color:=Color;
WizardForm.PasswordEdit.Color:=Color;
WizardForm.PasswordEditLabel.Color:=Color;
WizardForm.ReadyMemo.Color:=Color;
WizardForm.TypesCombo.Color:=Color;
WizardForm.WelcomeLabel1.Color:=Color;
WizardForm.InfoBeforeClickLabel.Color:=Color;
WizardForm.MainPanel.Color:=Color;
WizardForm.PageNameLabel.Color:=Color;
WizardForm.PageDescriptionLabel.Color:=Color;
WizardForm.ReadyLabel.Color:=Color;
WizardForm.FinishedLabel.Color:=Color;
WizardForm.YesRadio.Color:=Color;
WizardForm.NoRadio.Color:=Color;
WizardForm.WelcomeLabel2.Color:=Color;
WizardForm.LicenseLabel1.Color:=Color;
WizardForm.InfoAfterClickLabel.Color:=Color;
WizardForm.ComponentsList.Color:=Color;
WizardForm.ComponentsDiskSpaceLabel.Color:=Color;
WizardForm.BeveledLabel.Color:=Color;
WizardForm.StatusLabel.Color:=Color;
WizardForm.FilenameLabel.Color:=Color;
WizardForm.SelectDirLabel.Color:=Color;
WizardForm.SelectStartMenuFolderLabel.Color:=Color;
WizardForm.SelectComponentsLabel.Color:=Color;
WizardForm.SelectTasksLabel.Color:=Color;
WizardForm.LicenseAcceptedRadio.Color:=Color;
WizardForm.LicenseNotAcceptedRadio.Color:=Color;
WizardForm.UserInfoNameLabel.Color:=Color;
WizardForm.UserInfoNameEdit.Color:=Color;
WizardForm.UserInfoOrgLabel.Color:=Color;
WizardForm.UserInfoOrgEdit.Color:=Color;
WizardForm.PreparingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Color:=Color;
WizardForm.UserInfoSerialLabel.Color:=Color;
WizardForm.UserInfoSerialEdit.Color:=Color;
WizardForm.TasksList.Color:=Color;
WizardForm.RunList.Color:=Color;
WizardForm.SelectDirBrowseLabel.Color:=Color;
WizardForm.SelectStartMenuFolderBrowseLabel.Color:=Color;
end;
_Monster_
19-09-2009, 22:12
спасибо! помогло http://pic.ipicture.ru/uploads/090919/thumbs/YEmFlF7WH2.png (http://ipicture.ru/Gallery/Viewfull/23990936.html)
Помогите разобраться.
жму 15 гигов в 11.5 кусками по 650 метров и на выходе сетап не запускается - просто окно внизу, не разворачивается.
(см скрины в приложении, на втором скрине 2 процесса - DOW_Setup.exe и DOW_Setup.tmp, на первом - внизу окошко предпросмотра Win 7 и все, не разворачивается)
делаю тот же скрипт на тестовых файлах (50 метров файлов) - все работает. чтото с размером связанное
diskspanning=true
compression=lzma/ultra64
; compression=none
;compression=lzma
ShowUndisplayableLanguages=true
compressionthreads=auto
solidcompression=true
slicesperdisk=1
diskslicesize=1550000000
DisableProgramGroupPage=false
PrivilegesRequired=none
AllowRootDirectory=false
В чем беда? запарился 15 гигов жать уже раз 5.
ps - сейчас без сжатия и с размером 1.4 гига сделал - та же проблема
Решил проблему но как не понял. Убрал solid compression, выставил 3 1.4-гиговых куска на диск (по-правильному а был 1 кусок на диск. И убрал sorce directory=.\ Если честно не знаю что это такое - было у меня в сэмплом скрипте на котором я все остальные писал.
Aurochs, дело не в степени сжатия и не в том, по сколько у тебя сетапы будут! Всему виной секция [Files]: все файлы, которые ты добавлял отдельно, перенеси на начало секции, а папку с игрой в самый низ! Например,
[Files]
Source: C:\1.bmp; DestDir: {tmp}; Flags: dontcopy
Source: C:\1.mp3; DestDir: {tmp}; Flags: dontcopy
Source: C:\Program Files\Inno Setup 5\InnoCallback.dll; Flags: dontcopy noencryption solidbreak;
Source: C:\2.bmp; DestDir: {tmp}; Flags: dontcopy
Source: "D:\Games\Call Of Duty 4\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Aurochs, попробуй вернуть всё, что убрал, и сделать как у меня... просто файлы из [Files] распаковываются один за другим, и если папка с игрой вверху где-то, то инталлятор пытается распаковать файлы игры, и только потом всё отсальное...
Подскажите пожалуйста, а можно ли слепить на IS инсталлятор с полностью тихой установкой, на NSIS это не проблема.
S.E.K.T.O.R.
20-09-2009, 23:28
Народ, если кто знает подскажите!!!
Как отключить сообщение "Недостаточно места на диске"
S.E.K.T.O.R.
21-09-2009, 00:08
Подскажите пожалуйста, а можно ли слепить на IS инсталлятор с полностью тихой установкой, на NSIS это не проблема. »
Можно
[Setup]
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
DisableDirPage=yes
DisableProgramGroupPage=yes
DisableReadyPage=yes
DisableFinishedPage=yes
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes
[Files]
Source: "C:\My Program\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
[Code]
procedure CurPageChanged(CurPageID: Integer);
begin
If CurPageID=wpWelcome then
begin
SendMessage(WizardForm.NEXTBUTTON.Handle, 513, 0, 0)
SendMessage(WizardForm.NEXTBUTTON.Handle, 514, 0, 0)
end;
end;
S.E.K.T.O.R. Спасибо, попробую :)
а можно ли слепить на IS инсталлятор с полностью тихой установкой »
Все инсталляторы Inno Setup по умолчанию поддерживают установку в тихом режиме.
Для запуска инсталлятора в тихом режиме, запустите его с ключом /verysilent. Более подробно, можете прочитать в Справке по Inno Setup - "Параметры командной строки инсталлятора".
Как отключить сообщение "Недостаточно места на диске" »
Мне кажется - никак.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.