Вопрос Вопрос по установки

Avengerz13

Участник
Ученик_77,
Код:
[Components]
Name: Example1; Description: Загружаемый контент; ExtraDiskSpaceRequired: 100000000
Name: Example2; Description: Видео CD качества; Flags: exclusive; ExtraDiskSpaceRequired: 200000000
Name: Example3; Description: Видео HD качества; Flags: exclusive; ExtraDiskSpaceRequired: 500000000
Код:
    TmpValue:=1;
    if IsComponentSelected('Example1') then Comps1:=Comps1+TmpValue;     //Загружаемый контент
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Example2') then Comps1:=Comps1+TmpValue;     //Видео CD качества
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Example3') then Comps1:=Comps1+TmpValue;    //Видео HD качества;
if not SrepInit('',512,0) then break;
if not PrecompInit('',128,PCFVer) then break;
можно это закоментировать если среп или прекомп не использовали еще.
В остальном все правильно вроде.
 
Последнее редактирование:

Ученик_77

Участник
Avengerz13, спасибо, попробую вечером.
А то сделал по интуиции, компоненты к выбору предложились, а установилось всё равно всё, хоть и выбрал некоторые.)
А вот эти цифры
ExtraDiskSpaceRequired: 100000000
Размер компонента в байтах ?
 

Ученик_77

Участник
Значит, сделал пробную запаковку/установку.
На тестовом прогоне ставятся все компоненты.
При следующем пробном - ни одного, что бы не выбирал.
В данном примере обязательный элемент - Data.arc, на выбор - DLC.arc, MoviesPC.arc, MoviesPC-HD.arc.
 

Вложения

Ученик_77

Участник
Ок.
Проверил, всё работает.
Очень благодарен.
 
Последнее редактирование:

Ученик_77

Участник
Столкнулся с неожиданной проблемой.
С ярлыка, который на раб.столе создаёт установщик, игра не запускается.
Мелькает на пару секунд виндосовский значок загрузки и тишина.
В диспетчере - нет ничего.
Если зайти в папку и игрой и запустить - срабатывает.
Если из папки игры сделать ярлык и на стол поместить, тоже запускается.
Путь ярлыку, вроде, прописан верно...
 

Вложения

SBalykov

Старожил
Ученик_77,
Я же уже писал, если пишешь WorkingDir, то необходимо полностью прописать путь папки, в которой находится запускающий файл,
в противном случае, вообще убрать эту запись ...
 

Ученик_77

Участник
Mickey1s, спасибо.
SBalykov, да, помню, что писал.
Пока ещё спотыкаюсь на простых вещах.
 

Ученик_77

Участник
Приветствую всех.
Снова я.))
Скажите пожалуйста (речь идёт о том же скрипте-шаблоне, что ранее уже прикреплялся к теме, на несколько постов выше), как надо поступить вот в такой ситуации.
Секция компонентов выглядит так:
Код:
;#ifdef Components
[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: Example1; Description: Загружаемый контент; ExtraDiskSpaceRequired:
Name: Example2; Description: Таблетка SmartSteamEmu; ExtraDiskSpaceRequired:
Name: Example3; Description: Таблетка CODEX; ExtraDiskSpaceRequired:
Name: Example4; Description: Таблетка SteamFix; ExtraDiskSpaceRequired:
;#endif
Секция ярлыков пока так:
Код:
[Icons]
/////////////////////////ЯРЛЫК В Панели (чекбокс)
Name: {group}\{#GameName}; Filename: {app}\{#ExeName}; WorkingDir: {app}; Check: CheckError
Name: {group}\Удалить {#GameName}; Filename: {uninstallexe}; WorkingDir: {app}; Check: CheckError

/////////////////////////ЯРЛЫК на рабочем столе (чекбокс)
Name: {userdesktop}\{#GameName}; Filename: {app}\{#ExeName}; WorkingDir: {app}; Check: CheckError and Desktop1
Суть в том, что на выбор желаю предложить 3 таблетки.
У двух (CODEX и SteamFix) екзешник "родной", а у SmartSteamEmu - это Stellaris_Launcher.exe.
Я не знаю как прописать создание на него ярлыка при выборе именно этой таблетки.
Помогите, пожалуйста.
 

Mickey1s

Ветеран
Модератор
Name: {userdesktop}\{#GameName}; Filename: {app}\{#ExeName}; WorkingDir: {app}; Check: CheckError and Desktop1; Components: Example2;
 

Ученик_77

Участник
Приветствую всех!
Снова я с вопросами.
Планирую сделать установщик, где будет много компонентов, в том числе моды, которые могут ставится только один мод за установку, иначе файлы тупо перезаменят друг друга.
То есть флаг exclusive будет на них, но как прописать выбор или не выбор их установки ?
Код:
[Components]
Name: Example1; Description: Мод первый; Flags: exclusive; ExtraDiskSpaceRequired:
Name: Example2; Description: Мод второй; Flags: exclusive; ExtraDiskSpaceRequired:
А в начале что писать, что принять или отменить установки каких-либо модов ?
Спасибо.)
 

vint56

Ветеран
Проверенный
Ученик_77,
[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: Example; Description: Выбор модов; Types: full; Flags: fixed // нельзя снять галочку можно убрать если не хочеш ставить
Name: Example\1; Description: Мод первый; Flags: exclusive; ExtraDiskSpaceRequired: 2000000
Name: Example\2; Description: Мод второй; Flags: exclusive; ExtraDiskSpaceRequired: 6000000
 

Ученик_77

Участник
vint56, спасибо, попробую.
А далее тогда так будет ?
Код:
Comps1:=0; Comps2:=0; Comps3:=0; TmpValue:=1;
    if IsComponentSelected('Example\1') then Comps1:=Comps1+TmpValue;     //Загружаемый контент
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Example\2') then Comps1:=Comps1+TmpValue;
И если компонентов много у меня тогда так можно ?
[Components]
Name: Example1; Description: Выбор модов; Types: full; Flags: fixed // нельзя снять галочку можно убрать если не хочеш ставить
Name: Example1\1; Description: Мод первый; Flags: exclusive; ExtraDiskSpaceRequired: 2000000
Name: Example1\2; Description: Мод второй; Flags: exclusive; ExtraDiskSpaceRequired: 6000000
Name: Example2; Description: Прочее; ExtraDiskSpaceRequired:
Name: Example3; Description: Прочее; ExtraDiskSpaceRequired:
 

vint56

Ветеран
Проверенный
Ученик_77, // максимум 96 компонентов.

Comps1:=0; Comps2:=0; Comps3:=0;
#ifdef Components
TmpValue:=1;
if IsComponentSelected('Example1\1') then Comps1:=Comps1+TmpValue; //компонент 1
TmpValue:=TmpValue*2;
if IsComponentSelected('Example1\2') then Comps1:=Comps1+TmpValue; //компонент 2
TmpValue:=TmpValue*2;
if IsComponentSelected('Example1\3') then Comps1:=Comps1+TmpValue; //компонент 3
TmpValue:=TmpValue*2;
if IsComponentSelected('Example1\4') then Comps1:=Comps1+TmpValue; //компонент 4 // максимум 96 компонентов.
 

Ученик_77

Участник
vint56, да, ясно .
Ещё позвольте спросить.
Как создать ярлык, который будет запускать игру с правами администратора ?
У меня сейчас примерно так этот пункт выглядит:
Код:
[Icons]
/////////////////////////ЯРЛЫК В Панели (чекбокс)
Name: {group}\{#GameName}; Filename: {app}\{#ExeName}; WorkingDir: {app}; Check: CheckError
Name: {group}\Удалить {#GameName}; Filename: {uninstallexe}; WorkingDir: {app}; Check: CheckError

/////////////////////////ЯРЛЫК на рабочем столе (чекбокс)
Name: {userdesktop}\{#GameName}; Filename: {app}\{#ExeName}; WorkingDir: {app}; Check: CheckError and Desktop1
И если мне ещё надо добавить параметры запуска типа
Код:
Parameters: -offline -language=Russian
это же добавляется только в
Name: {userdesktop}\{#GameName}; Filename: {app}\{#ExeName}; WorkingDir: {app}; Parameters: -offline -language=Russian; Check: CheckError and Desktop1
Так как то ?
Написано позже.
Я тут немного почитал, запуск установленного с правами администратора прописать что ли можно только через реестр, или я опять не так понял ? ))
 
Последнее редактирование:
Сверху