Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 8]
Как убрать это сообщение:
Как в компоненты добавить установку шрифтов в папку Windows fonts.
kotyarko@fb
18-12-2015, 12:36
BMODS, [Files]
Source: "Font.otf"; DestDir: "{fonts}"; FontInstall: "Font_Real_Name"; Flags: fontisnttruetype onlyifdoesntexist uninsneveruninstall
Source: "Font2.ttf"; DestDir: "{fonts}"; FontInstall: "Font2_Real_Name"; Flags: onlyifdoesntexist uninsneveruninstall
Всё это есть в справке.
kotyarko@fb, а путь как указать ?
Примеры тут были знаю может кто скинуть :)
kotyarko@fb
18-12-2015, 14:40
а путь как указать ? »Путь чего?
Dodakaedr
18-12-2015, 16:49
Подскажите, как можно заменить несколько десятков значений на свое в ini файле?
Имеется ini файл на 1130 строк и в разных секциях в разных ключах есть определенное значение (%Programm Path%) вот и требуется его заменить. Через секцию [INI] не вариант.
Но только почему то, как и да этой процедуры выдает сообщение,
что часть элементов осталась, вы можете остальное удалить вручную.
Хотя ничего нет, все удалилось. »
Так пробовали?[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
Type: FilesAndOrDirs; Name: {app};
[co[u]de]
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then // или usUninstall
begin
UnloadDLL(ExpandConstant('{app}\msimg32.dll'));
DeleteFile(ExpandConstant('{app}\msimg32.dll'));
end;
//if CurUninstallStep = usDone then DelTree(ExpandConstant('{app}'), True, True, True);
end;
Так пробовали?
Так помогло. Только выдает сообщение, картинка чуть выше.
Где-то в системе наверное остались папки, (или в реестре записи) не могу найти.
Это сообщение напрягает.
Dodakaedr
18-12-2015, 21:08
Только выдает сообщение, картинка чуть выше. »
Если хвостов действительно нет, то можно вот так сделать:[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Messages]
UninstalledMost=Программа My Application была полностью удалена с вашего компьютера.
Type: FilesAndOrDirs; Name: {app};
[co[u]de]
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then // или usUninstall
begin
UnloadDLL(ExpandConstant('{app}\msimg32.dll'));
DeleteFile(ExpandConstant('{app}\msimg32.dll'));
end;
//if CurUninstallStep = usDone then DelTree(ExpandConstant('{app}'), True, True, True);
end;
Если хвостов действительно нет
Скорее всего остались хвосты после этих записей.
Name: "{userstartmenu}\Light Image Resizer 4"; Filename: "{app}\{#MyAppExeName}"; Check: PanelPuskCheck and UserIconCheck;
Name: "{commonstartmenu}\Light Image Resizer 4"; Filename: "{app}\{#MyAppExeName}"; Check: PanelPuskCheck and AllUserIconCheck;
Как зайти в эти папки?
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ObviousIdea\Light Image Resizer 4\Light Image Resizer 4.lnk
C:\Users\ZVSRus\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\ObviousIdea\Light Image Resizer 4\Light Image Resizer 4.lnk
Если так:
Procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if (CurUninstallStep = usPostUninstall) then
UnloadDLL(ExpandConstant('{app}\msimg32.dll'));
DeleteFile(ExpandConstant('{app}\msimg32.dll'));
DelTree(ExpandConstant('{app}'), True, True, True);
RemoveDir(ExpandConstant('{pf}\ObviousIdea'));
RemoveDir(ExpandConstant('{userstartmenu}\ObviousIdea'));
RemoveDir(ExpandConstant('{commonstartmenu}\ObviousIdea'));
end;
Так папки удалятся или нет
Dodakaedr
18-12-2015, 22:10
Так папки удалятся или нет »
Возьмите и проверьте. Но ярлыки если создавались инсталлятором, то они и будут удалены созданным деинсталлятором.
В секции Run есть ссылка на запуск интернет страницы через чекбокс на финишной странице.
Как прикрутить эту ссылку к кнопкам на диалоговом окне вместо финишной страницы. (FinishedPage) пропущена.
[Run]
Filename: "http://www.obviousidea.com/windows-software/light-image-resizer/how-to-resize-a-photo/"; Description: "{cm:LaunchGuide,Light Image Resizer 4}"; MinVersion: 0.0,5.0; Flags: shellexec postinstall skipifsilent nowait
Dodakaedr
19-12-2015, 18:34
Как прикрутить эту ссылку к кнопкам на диалоговом окне вместо финишной страницы »
Создайте задачу в tasks либо отдельно чекбокс и открывайте ссылку по окончанию установки.
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
DisableReadyPage=yes
DisableFinishedPage=yes
[Code]
var
LinkProg: TNewCheckBox;
procedure InitializeWizard();
begin
LinkProg := TNewCheckBox.Create(WizardForm);
LinkProg.Parent := WizardForm.SelectDirPage;
LinkProg.Caption := 'Посетить сайт программы';
LinkProg.SetBounds(ScaleX(1), ScaleY(WizardForm.DirEdit.Top + 25), ScaleX(148), ScaleY(20));
end;
procedure CurStepChanged(CurStep: TSetupStep);
var
r: integer;
begin
if CurStep = ssDone then
begin
MsgBox('Установка завершена', mbInformation, MB_OK);
if LinkProg.Checked then
ShellExec('', 'http://www.obviousidea.com/windows-software/light-image-resizer/how-to-resize-a-photo/', '','', SW_SHOW, ewNoWait, r);
end;
end;
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
DisableFinishedPage=yes
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
r: integer;
begin
if CurStep = ssDone then
begin
if MsgBox('Установка завершена!'+#13#10'Посетить сайт программы?', mbInformation, MB_YESNO) = IDYES then
ShellExec('', 'http://www.obviousidea.com/windows-software/light-image-resizer/how-to-resize-a-photo/', '','', SW_SHOW, ewNoWait, r);
end;
end;
Кнопку на диалоговом окне, насколько я знаю не создать.
vadjliss
19-12-2015, 21:04
парни помогите или подскажите скрипт
http://fs5.directupload.net/images/151219/temp/xydfejzj.jpg (http://fs5.directupload.net/images/151219/xydfejzj.jpg)
Кнопку на диалоговом окне, насколько я знаю не создать.
Оба скрипта работают. Все хорошо.
Но хотелось бы запуск страницы прикрутить к скрипту ниже.
Прикрутить к чекбоксу.
Скрипт
//#include "botva2.iss"
[Setup]
AppName=ACDSee 5.0 Power Pack
AppVersion=ACDSee 5.0 Power Pack
DefaultDirName={pf}\ACD Systems
DisableFinishedPage=yes
OutputDir=.
UsePreviousAppDir=no
UsePreviousGroup=no
//SetupIconFile=icon.ico
[files]
//Source: "b2p.dll"; DestDir: "{tmp}"; Flags: dontcopy
//Source: "botva2.dll"; DestDir: "{tmp}"; Flags: dontcopy
//Source: "Icon.png"; DestDir: "{tmp}"; Flags: dontcopy
[ Code]
//function InitializeSetup(): Boolean;
//begin
//if not FileExists(ExpandConstant('{tmp}\b2p.dll')) then ExtractTemporaryFile('b2p.dll');
//if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
//if not FileExists(ExpandConstant('{tmp}\icon.png')) then ExtractTemporaryFile('icon.png');
//Result := True;
//end;
function ShowFinishedForm(): Boolean;
var
FinishedForm: TSetupForm;
begin
FinishedForm := CreateCustomForm;
FinishedForm.Position:=poScreenCenter;
try
FinishedForm.ClientWidth := ScaleX(310);
FinishedForm.ClientHeight := ScaleY(133);
FinishedForm.BorderStyle := bsSingle;
FinishedForm.BorderIcons := [biSystemMenu];
FinishedForm.Caption := 'Установка — ACDSee 5.0 Power Pack';
FinishedForm.CenterInsideControl(WizardForm, False);
// ImgLoad(FinishedForm.Handle, ExpandConstant('{tmp}\icon.png'), ScaleX(20), ScaleY(22), ScaleX(40), ScaleY(40), True, False);
// ImgApplyChanges(FinishedForm.Handle);
with TNewButton.Create(FinishedForm) do
begin
Parent := FinishedForm;
SetBounds(ScaleX(110), ScaleY(100), ScaleX(90), ScaleY(25));
ModalResult := mrYes;
Caption := SetupMessage(msgButtonYes);
end;
with TNewStaticText.Create(FinishedForm) do
begin
Parent:= FinishedForm;
Caption:='Все готово, приятного пользования!'+ #13#10 +
''+ #13#10 +
'Запустить программу сейчас?';
Left:=70;
Top:=20;
Font.Name:= 'Tahoma';
Font.Size:= 9;
Font.Color:=clBlack;;
end;
with TNewButton.Create(FinishedForm) do
begin
Parent := FinishedForm;
SetBounds(ScaleX(210), ScaleY(100), ScaleX(90), ScaleY(25));
ModalResult := mrNo;
Caption := SetupMessage(msgButtonNo);
end;
with TNewCheckBox.Create(FinishedForm) do
begin
Parent := FinishedForm;
Caption := 'Посетить сайт программы';
SetBounds(ScaleX(10), ScaleY(70), ScaleX(150), ScaleY(25));
end;
Result := (FinishedForm.ShowModal = mrYes);
finally
FinishedForm.Free;
end;
end;
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: Integer;
//r: integer;
begin
case CurStep of
ssDone:
if ShowFinishedForm then
Exec(ExpandConstant('{pf}\ArtIcons Pro\ARTICONS.exe'), '', '', SW_SHOW, ewNoWait, ResultCode);
// if MsgBox('Посетить сайт программы?', mbInformation, MB_YESNO) = IDYES then
// ShellExec('http://www.obviousidea.com/windows-software/light-image-resizer/how-to-resize-a-photo/', '','', SW_SHOW, ewNoWait, r);
end;
end;
помогите или подскажите скрипт »OuterNotebook:
http://i2.imageban.ru/thumbs/2015.12.20/12e9c5a27c5b03a02493d2b19549d500.png (http://i2.imageban.ru/out/2015/12/20/12e9c5a27c5b03a02493d2b19549d500.png)
vadjliss
20-12-2015, 07:58
мне нужно саму рамку увеличить не внутриннию а наружную
http://fs5.directupload.net/images/151219/temp/xydfejzj.jpg
vadjliss, кликаешь на любое место WizardForm и растягиваешь, как тебе надо.
vadjliss
20-12-2015, 08:43
пишет что блокировано
мне нужно саму рамку увеличить не внутриннию а наружную »
пишет что блокировано »На снимке вы показываете именно то:
http://i1.imageban.ru/thumbs/2015.12.20/d9b1401fcb10d5cc337684349fa7e496.png (http://i1.imageban.ru/out/2015/12/20/d9b1401fcb10d5cc337684349fa7e496.png) http://i4.imageban.ru/thumbs/2015.12.20/112c443cfdd1e38bc59bd8593ad2039b.png (http://i4.imageban.ru/out/2015/12/20/112c443cfdd1e38bc59bd8593ad2039b.png)
что я вам ответил в #1176 (http://forum.oszone.net/post-2586603-1176.html) сообщении.
Или, как вы собрались увеличивать OuterNotebook, если WizardForm не увеличена? Т.е у WizardForm не хватает области для дальнейшего растягивания, чтобы растянуть OuterNotebook нужно сначала растянуть WizardForm:
http://i6.imageban.ru/thumbs/2015.12.20/269c386e44e3939f48beafe323c173e7.png (http://i6.imageban.ru/out/2015/12/20/269c386e44e3939f48beafe323c173e7.png) http://i6.imageban.ru/thumbs/2015.12.20/723c9ee44a65471cd77c8bde089ad77c.png (http://i6.imageban.ru/out/2015/12/20/723c9ee44a65471cd77c8bde089ad77c.png)
а уже тогда растягивать OuterNotebook:
http://i6.imageban.ru/thumbs/2015.12.20/46399bfebd1eb6b8d238e88f9abc7241.png (http://i6.imageban.ru/out/2015/12/20/46399bfebd1eb6b8d238e88f9abc7241.png) http://i4.imageban.ru/thumbs/2015.12.20/94f6dd533705bf2703c2af09ee082804.png (http://i4.imageban.ru/out/2015/12/20/94f6dd533705bf2703c2af09ee082804.png)
Или вы на столько изменили форму, что невозможно определить что вам нужно, и в действительности вам нужно растянуть InnerNotebook?
InnerNotebook:
http://i6.imageban.ru/thumbs/2015.12.20/bc68d8e48cc5e34fba1d38fed89631ec.png (http://i6.imageban.ru/out/2015/12/20/bc68d8e48cc5e34fba1d38fed89631ec.png) http://i1.imageban.ru/thumbs/2015.12.20/28e4c4cbb3f067806b25bd022603ecfc.png (http://i1.imageban.ru/out/2015/12/20/28e4c4cbb3f067806b25bd022603ecfc.png) http://i4.imageban.ru/thumbs/2015.12.20/83bb4a0cb87fa25f6468c9cda3c3fd63.png (http://i4.imageban.ru/out/2015/12/20/83bb4a0cb87fa25f6468c9cda3c3fd63.png)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.