Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 7]
saneksanek
07-06-2014, 00:13
Dodakaedr, Без толку,приветствие становится стандартное,а то что должно быть вместо него идет на остальных вкладках .Может проще будет дать скрип с файлами?
Dodakaedr
07-06-2014, 00:15
Без толку,приветствие становится стандартное,а то что должно быть вместо него идет на остальных вкладках .Может проще будет дать скрип с файлами? »
Ну это действительно улучшает шанс вам помочь:)
saneksanek
07-06-2014, 00:22
Dodakaedr, Лс.
Raf-9600
07-06-2014, 11:16
Ктонить может дать пример скрипта в котором компоненты по умолчанию выбираются в зависимости от языка интерфейса винды?
sergey3695
07-06-2014, 14:24
Raf-9600,
if GetUILanguage = $0419 then
в справке посмотри, если я правильно понял.
Dodakaedr
08-06-2014, 10:36
Как с помощью этого кода создать такое правило в Windows Firewall?http://savepic.net/5673542m.jpg (http://savepic.net/5673542.htm)
[Setup]
AppName=My Program
AppVerName=My Program
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputBaseFilename=setup
OutputDir=.
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Icons]
Name: {group}\{cm:UninstallProgram,My Program}; Filename: {uninstallexe}
[ code]
// Вспомогательные функции для установки Inno
// Используется для добавления / удаления программ из правил брандмауэра Windows
// Код, родом из http://news.jrsoftware.org/news/innosetup/msg43799.html
const
NET_FW_SCOPE_ALL = 0;
NET_FW_IP_VERSION_ANY = 2;
procedure SetFirewallException(AppName,FileName:string);
var
FirewallObject: Variant;
FirewallManager: Variant;
FirewallProfile: Variant;
begin
try
FirewallObject := CreateOleObject('HNetCfg.FwAuthorizedApplication');
FirewallObject.ProcessImageFileName := FileName;
FirewallObject.Name := AppName;
FirewallObject.Scope := NET_FW_SCOPE_ALL;
FirewallObject.IpVersion := NET_FW_IP_VERSION_ANY;
FirewallObject.Enabled := True;
FirewallManager := CreateOleObject('HNetCfg.FwMgr');
FirewallProfile := FirewallManager.LocalPolicy.CurrentProfile;
FirewallProfile.AuthorizedApplications.Add(FirewallObject);
except
end;
end;
procedure RemoveFirewallException( FileName:string );
var
FirewallManager: Variant;
FirewallProfile: Variant;
begin
try
FirewallManager := CreateOleObject('HNetCfg.FwMgr');
FirewallProfile := FirewallManager.LocalPolicy.CurrentProfile;
FireWallProfile.AuthorizedApplications.Remove(FileName);
except
end;
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep=ssPostInstall then
SetFirewallException('My Server', ExpandConstant('{app}')+'\TCPServer.exe');
end;
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep=usPostUninstall then
RemoveFirewallException(ExpandConstant('{app}')+'\TCPServer.exe');
end;
diman_21Ru
08-06-2014, 12:02
Помогите пожалуйста , не вставляется картинка ,в эти места , потом надо чтобы она сменевалась на картинки уже наводящие на моды.
Используется скрипт Source: Images\Внешний вид\3.bmp; DestName: "WizardForm.BitmapImage1.bmp"; Flags: dontcopy solidbreak , до появления функции теста картинка появлялась сейчас пропала .
saneksanek
09-06-2014, 23:06
diman_21Ru, Много букв и мало связи.
Если понял правильно вот держи http://rghost.ru/private/56276751/41d13ec52cd92dc2e5e24d205893aabc
Dodakaedr
12-06-2014, 16:17
Всем привет! Не могу понять почему не ставится картинка. Использую ботву, надо заменить стандартный WizardForm.WizardSmallBitmapImage...ImgLoad(WizardForm.MainPanel.Handle, ExpandConstant('{tmp}\1.png'), ScaleX(0), ScaleY(0), ScaleX(160), ScaleY(50), True, True);
ImgApplyChanges(WizardForm.MainPanel.Handle);
Спустя 5 часов 31 мин. Все разобрался)
diman_21Ru
12-06-2014, 23:09
Как можно добавить чистую страницу для вторых компонентов
Dodakaedr
12-06-2014, 23:47
Как можно добавить чистую страницу для вторых компонентов »
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[ Code]
var
ISCustomPage1: TWizardPage;
procedure RedesignWizardForm;
begin
ISCustomPage1 := CreateCustomPage(wpWelcome, 'ISCustomPage1_Caption', 'ISCustomPage1_Description');
end;
procedure InitializeWizard();
begin
RedesignWizardForm;
end;
Как можно добавить чистую страницу для вторых компонентов »Используйте "Дизайнер диалогов"
Откройте "Inno Setup Compiler"
Перейдите во вкладку "Дизайнер диалогов"
С левого бока выберите страницу (Welcome Page, License Page, Password Page и т.д) под которой хотите разместить новую чистую страницу.
Вверху, где "Файл, Правка" найдите "Дизайнер"
Кликните "Дизайнер", затем "Добавить диалог"
Всё, новая страница добавлена.
diman_21Ru
13-06-2014, 10:39
Dodakaedr, Мне вариант с нажатием на кнопку и спустить в низ больше понравился но с размерами запутался можете помочь скрипт вышлю , http://rghost.ru/56348041 , жду ответа =)
Dinvin4ester
13-06-2014, 12:20
Ребята,делаю выбор таблеток - http://i61.fastpic.ru/big/2014/0613/f4/7e5b91941aa2c47653cef9420b833cf4.png ,от али все нормально,а вот от кодекса присутсвуют такие файлы http://i64.fastpic.ru/big/2014/0613/f1/2a26ccd501a9a4c72863222cf21ddbf1.png,но при установке exe этот не заменяется,только ини файлы пеносяться.Как быть? Пожскажите пожалуйста..
но с размерами запутался »Если интересует Form_Soft, то вот:
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Types]
Name: full; Description: Full installation; Flags: iscustom
[Components]
Name: text; Description: Дополнительное по; Types: full;
Name: text\DirectX; Description: DirectX 9;
Name: text\Visual; Description: Microsoft Visual C++;
[code]
var
Flag: Boolean;
SettingButton: TButton;
procedure HideShowOnClick(Sender: TObject);
begin
if Flag = False then begin
WizardForm.ClientWidth:= ScaleX(497);
WizardForm.ClientHeight:= ScaleY(360);
Flag:= True;
SettingButton.Caption:= '[ Показать ]';
end else begin
WizardForm.ClientWidth:= ScaleX(497);
WizardForm.ClientHeight:= ScaleY(550); // Высота
Flag:= False;
SettingButton.Caption:= '[ Скрыть ]';
end;
end;
procedure InitializeWizard();
begin
SettingButton:= TButton.Create(WizardForm);
// Слева Сверху Ширина Высота
SettingButton.SetBounds(ScaleX(5),ScaleY(325), ScaleX(80), ScaleY(23))
SettingButton.Caption:= '[ Показать ]';
SettingButton.OnClick:= @HideShowOnClick;
SettingButton.Parent:= WizardForm;
Flag:=True;
with WizardForm do begin
ComponentsList.Parent:= WizardForm;
WizardForm.ComponentsList.Checked[1]:=True
WizardForm.ComponentsList.Checked[2]:=True
// Слева Сверху Ширина Высота
WizardForm.ComponentsList.SetBounds(ScaleX(8),ScaleY(370), ScaleX(480), ScaleY(170))
WizardForm.ComponentsList.Color := clMenu;
end;
Dodakaedr
13-06-2014, 13:52
Мне вариант с нажатием на кнопку и спустить в низ больше понравился но с размерами запутался можете помочь »
Так сойдет? Script.iss (http://rghost.ru/private/56350920/6f2d9a872fe7f66ca97874dc5b118bff)
Dinvin4ester
13-06-2014, 14:19
Подскажите мне ?
Dodakaedr
13-06-2014, 14:21
Подскажите мне ? »
Мало инфы, нету скрипта.....как вам помочь?
Dinvin4ester
13-06-2014, 14:28
Dodakaedr,
Вот скрипт - http://multi-up.com/980008 . Не получается при установке заменить сами файлы,таблетка не встает,так как не заменяется сам ехе,буду рад помощи.
Dinvin4ester, В секции [Files]
Source: "D:\Games\NoDVD\ALI213\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: SPINTIRES\ru;
Source: "D:\Games\NoDVD\CODEX\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: SPINTIRES\en;
Source: "D:\Games\SPINTIRES\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs;
передвинь строку:
Source: "D:\Games\SPINTIRES\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs;
на уровень выше
т.е вот так:
Source: "D:\Games\SPINTIRES\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs;
Source: "D:\Games\NoDVD\ALI213\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: SPINTIRES\ru;
Source: "D:\Games\NoDVD\CODEX\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: SPINTIRES\en;
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC