Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 8]
R.i.m.s.k.y.
01-04-2015, 15:00
svs23,
[Files]
Components: punkt1 and not punkt2 and not punkt3; Source: 1\file1...
Components: punkt2 and not punkt1 and not punkt3; Source: 2\file2...
Components: punkt3 and not punkt2 and not punkt1; Source: 3\file3...
Components: punkt1 and punkt2; Source: 4\file4...
Components: punkt2 and punkt3; Source: 5\file5...
дальше по аналогии
kotyarko@fb
01-04-2015, 15:09
если в списке компонентов выбран пункт 1 то копировать файл 1
если в списке компонентов выбран пункт 2 то копировать файл 2
если в списке компонентов выбран пункт 3 то копировать файл 3
если в списке компонентов выбран пункт 1 и 2 то копировать файл 4 но не копировать файл 1 и 2
если в списке компонентов выбран пункт 2 и 3 то копировать файл 5 но не копировать файл 2 и 3
если в списке компонентов выбран пункт 1 и 3 то копировать файл 6 но не копировать файл 1 и 3
если в списке компонентов выбран пункт 1 и 2 и 3 то копировать файл 7 но не копировать файл 1 и 2 и 3 »
Там же поддерживаются логические операторы. Значит что-то типо такого должно прокатить:[Components]
Name: one; Description: "1";
Name: two; Description: "2";
Name: three; Description: "3";
[Files]
Source: "File1"; DestDir: ""; Components: one and not (two and three);
Source: "File2"; DestDir: ""; Components: two and not (one and three);
Source: "File3"; DestDir: ""; Components: three and not (one and two);
Source: "File4"; DestDir: ""; Components: one and two and not three;
Source: "File5"; DestDir: ""; Components: two and three and not one;
Source: "File6"; DestDir: ""; Components: one and three and not two;
Source: "File7"; DestDir: ""; Components: one and two and three;
Надеюсь, правильно вас понял.
R.i.m.s.k.y.
01-04-2015, 15:11
svs23 конфа в инишнике?
Dodakaedr
01-04-2015, 15:32
не правильно сформулировал вопрос
надо так »
[setup]
appname=app
appversion=1.0
DefaultDirName={sd}\app
[Files]
;если файл
Source: file1.xml; DestDir: {app}; Components: file1 and not file3 and not file2;
Source: file2.xml; DestDir: {app}; Components: file2 and not file1 and not file3;
Source: file3.xml; DestDir: {app}; Components: file3 and not file1 and not file2;
Source: file4.xml; DestDir: {app}; Components: file1 and file2 and not file3;
Source: file5.xml; DestDir: {app}; Components: file2 and file3 and not file1;
Source: file6.xml; DestDir: {app}; Components: file1 and file3 and not file2;
Source: file7.xml; DestDir: {app}; Components: file1 and file2 and file3;
[INI]
;если *.ini файл
Filename: {app}\file1.txt; Section: settings; Key: OnTop; String: Yes; Components: file1 and not file3 and not file2;
Filename: {app}\file2.txt; Section: settings; Key: Ask; String: No; Components: file2 and not file1 and not file3;
Filename: {app}\file3.txt; Section: settings; Key: ST; String: Stop; Components: file3 and not file1 and not file2;
Filename: {app}\file4.txt; Section: settings; Key: St; String: Play; Components: file1 and file2 and not file3;
Filename: {app}\file5.txt; Section: settings; Key: Type; String: Discont; Components: file2 and file3 and not file1;
Filename: {app}\file6.txt; Section: settings; Key: Name; String: Player; Components: file1 and file3 and not file2;
Filename: {app}\file7.txt; Section: settings; Key: BD; String: 12; Components: file1 and file2 and file3;
[Components]
Name: file1; Description: file1;
Name: file2; Description: file2;
Name: file3; Description: file3;
Source: file1.xml; DestDir: {app}; Components: file1 and not file3 and not file2;
Source: file2.xml; DestDir: {app}; Components: file2 and not file1 and not file3;
Source: file3.xml; DestDir: {app}; Components: file3 and not file1 and not file2;
Source: file4.xml; DestDir: {app}; Components: file1 and file2 and not file3;
Source: file5.xml; DestDir: {app}; Components: file2 and file3 and not file1;
Source: file6.xml; DestDir: {app}; Components: file1 and file3 and not file2;
Source: file7.xml; DestDir: {app}; Components: file1 and file2 and file3; »
то что надо
огромное СПС
kotyarko@fb, R.i.m.s.k.y., Dodakaedr,
спасибо всем
подскажите правильно сделал?
[Files]
Source: "...\XVMSymbol_11.1*"; DestDir: "{tmp}\XVMSymbol_11.1";
[Run]
Filename: "{tmp}\XVMSymbol_11.1\fontinst.exe"; Parameters: "/f fontinst.inf"
R.i.m.s.k.y.
02-04-2015, 10:46
svs23, смотря чего хочешь сделать
в {tmp} скопировать папку XVMSymbol_11.1 с содержимым fontinst.exe, fontinst.inf, XVMSymbol_11.1.ttf
fontinst.inf
[fonts]
XVMSymbol_11.1.ttf
при выполнении установки запустить fontinst.exe /f fontinst.inf для установки в систему шрифта XVMSymbol_11.1.ttf
R.i.m.s.k.y.
02-04-2015, 11:01
svs23, можно
а можно использовать средства инно
[Files]
Source: "XVMSymbol_11.1.ttf"; DestDir: "{fonts}"; FontInstall: "XVMSymbol_11.1"; Flags: onlyifdoesntexist uninsneveruninstall
нашел это пост и делал по нему....
http://forum.oszone.net/post-660231-2.html
[Files]
Source: "XVMSymbol_11.1.ttf"; DestDir: "{fonts}"; FontInstall: "XVMSymbol_11.1"; Flags: onlyifdoesntexist uninsneveruninstall »
я так понял шрифт скопируется и установится в системе? перегружать винду не нужно будет?
R.i.m.s.k.y.
02-04-2015, 11:25
я так понял шрифт скопируется и установится в системе? перегружать винду не нужно будет? »
ну если не 98-я то нет
а как скрыть размер файла в окне выбора компонентов?
R.i.m.s.k.y.
02-04-2015, 12:38
svs23,
я так делаю
[Files]
check: True_function; Source: "XVMSymbol_11.1.ttf"; DestDir: "{fonts}"; FontInstall: "XVMSymbol_11.1"; Flags: onlyifdoesntexist uninsneveruninstall
[Code]
function True_function(): Boolean;
begin
Result := True;
end;
я так понял шрифт скопируется и установится в системе? перегружать винду не нужно будет? »
добавь еще
[Setup]
ChangesAssociations=true
ChangesEnvironment=true
это заставит инно передернуть винду на изменившиеся связи и регистрации файлов
а где можно найти инфу как сделать запоминание выбранных ранее элементов в установщике при повторных установках
R.i.m.s.k.y.
02-04-2015, 14:43
svs23, я делаю сам: в реестр пишу несколько строковых параметров и потом уже анализирую
а вообще в секции реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\твойID есть четыре строковых параметра:
- Inno Setup: Deselected Components
- Inno Setup: Deselected Tasks
- Inno Setup: Selected Components
- Inno Setup: Selected Tasks
из названия ясно что за что отвечает
Dodakaedr
02-04-2015, 14:44
а где можно найти инфу как сделать запоминание выбранных ранее элементов в установщике при повторных установках »
В справке. А вообще по умолчанию включено запоминание сценария предыдущей установки.
я делаю сам: в реестр пишу несколько строковых параметров и потом уже анализирую
а вообще в секции реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\твойID есть четыре строковых параметра:
- Inno Setup: Deselected Components
- Inno Setup: Deselected Tasks
- Inno Setup: Selected Components
- Inno Setup: Selected Tasks
из названия ясно что за что отвечает »
:) это конечно хорошо, но что и как мне с этим Selected Components делать?
R.i.m.s.k.y.
02-04-2015, 14:46
В справке. А вообще по умолчанию включено запоминание сценария установки. »
да, забыл написать
это конечно хорошо, но что и как мне с этим Selected Components делать? »
анализировать
парсить
я ж говорю: проще самому писать в реетр
А вообще по умолчанию включено запоминание сценария предыдущей установки. »
что-то у меня такого не наблюдается! может по-тому что отключил создание ярлыка в Программы и Компоненты?
подскажите где он ВКЛ/ВЫКЛ
Dodakaedr
02-04-2015, 14:50
подскажите где он ВКЛ/ВЫКЛ »
Если Вы: отключил создание ярлыка в Программы и Компоненты? »
то должны знать как и включить.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.