PDA

Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 7]


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 [44] 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125

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;

Nordek
13-06-2014, 02:10
Как можно добавить чистую страницу для вторых компонентов »Используйте "Дизайнер диалогов"
Откройте "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 этот не заменяется,только ини файлы пеносяться.Как быть? Пожскажите пожалуйста..

Nordek
13-06-2014, 13:00
но с размерами запутался »Если интересует 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 . Не получается при установке заменить сами файлы,таблетка не встает,так как не заменяется сам ехе,буду рад помощи.

Nordek
13-06-2014, 16:14
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