Inno Setup (создание инсталяционных пакетов). Часть 3

Статус
В этой теме нельзя размещать новые ответы.

GolD20

Новичок
Здравствуйте. Такая проблема: В установщике,когда появляется меню с установкой дополнительного ПО, я убираю галочки(чтобы этот софт не устанавливался), но он все равно устанавливается.

[Tasks]
Name: Soft; Description: Установка софта:; Flags: unchecked
Name: Soft\VCCheck; Description: Установить Microsoft Visual C++ 2010 Redist
Name: Soft\DirectX; Description: Установить DirectX
Name: Soft\SFS; Description: Установить SangFroidSetup(Обязательно)

[Run]
Filename: {src}\Redist\vcredist_x86.exe; Parameters: /q; StatusMsg: Устанавливаем Microsoft Visual C++ 2010 Redist...; Flags: skipifdoesntexist; Check: CheckError
Filename: {src}\Redist\dxwebsetup.exe; Parameters: /q; StatusMsg: Обновление DirectX...; Flags: skipifdoesntexist; Check: CheckError
Filename: {src}\Redist\SangFroidSetup.exe; Parameters: /VERYSILENT; StatusMsg: Установка SangFroidSetup ...; Flags: skipifdoesntexist ; Check: CheckError
 

ReFLeXx

Новичок
Здравствуйте. Такая проблема: В установщике,когда появляется меню с установкой дополнительного ПО, я убираю галочки(чтобы этот софт не устанавливался), но он все равно устанавливается.
Код:
[Tasks]
Name: Soft; Description: Установка софта:; Flags: unchecked
[B]Name: Soft\VCCheck[/B]; Description: Установить Microsoft Visual C++ 2010 Redist

[Run]
Filename: {src}\Redist\vcredist_x86.exe; Parameters: /q; [B]Tasks: Soft\VCCheck[/B]; StatusMsg: Устанавливаем Microsoft Visual C++ 2010 Redist...; Flags: skipifdoesntexist;  Check: CheckError;
 

GolD20

Новичок
Как сделать чтобы по стандарту галочки на софте везде стояли? А то у меня только на одной программе стоят. Вот скрин. Второй вопрос, как сделать,чтобы на программе SangFroidSetup галочку вообще убрать нельзя было? Типа обязательная программа. И если заменю Parameters: /q; на Parameters: /VERYSILENT; ничего не будет? Хочу чтобы софт устанавливался в тихом режиме, без участия пользователя. Спасибо.

[Tasks]
Name: Soft; Description: Установка софта:; Flags: unchecked
Name: Soft\VCCheck; Description: Установить Microsoft Visual C++ 2010 Redist
Name: Soft\DirectX; Description: Установить DirectX
Name: Soft\SFS; Description: Установить SangFroidSetup(Обязательно)

[Run]
Filename: {src}\Redist\vcredist_x86.exe; Parameters: /q; Tasks: Soft\VCCheck; StatusMsg: Устанавливаем Microsoft Visual C++ 2010 Redist...; Flags: skipifdoesntexist; Check: CheckError
Filename: {src}\Redist\dxwebsetup.exe; Parameters: /q; Tasks: Soft\DirectX; StatusMsg: Обновление DirectX...; Flags: skipifdoesntexist; Check: CheckError
Filename: {src}\Redist\SangFroidSetup.exe; Parameters: /VERYSILENT; Tasks: Soft\SFS; StatusMsg: Установка SangFroidSetup ...; Flags: skipifdoesntexist ; Check: CheckError
 

Вложения

Лёха

Участник
GolD20,
1) читай хелпы, на руборде пошарь... на сколько я помню такое срашивали туеву хучу раз.
2) Name: Soft\SFS; Description: Установить SangFroidSetup(Обязательно) - убери это.
 

Mickey1s

Ветеран
Модератор
Объязательно через "ъ" пишется
И про {commonappdata} вместо {app} не забывайте :)
 

Mailchik

Старожил
Проверенный
Как сделать чтобы по стандарту галочки на софте везде стояли?
Скопировал ваш скрипт - все галочки отмечены.[HR][/HR]
как сделать,чтобы на программе SangFroidSetup галочку вообще убрать нельзя было?
Так как это таск, а не компонент - то через код:
Код:
[B][[/B]Code]
procedure CurPageChanged(CurPageID : integer);
 begin
  case CurPageID of
   wpSelectTasks : WizardForm.TasksList.ItemEnabled[WizardForm.TasksList.Items.IndexOf('Установить SangFroidSetup(Обязательно)')] := False;
  end;
end;
[HR][/HR]
И если заменю Parameters: /q; на Parameters: /VERYSILENT; ничего не будет?
Ничего не будет.
 

GolD20

Новичок
Как сделать,чтобы на раб.столе создавались 2 ярлыка запуска: для х32 и х64? В папке с игрой они есть.
 
  • Like
Реакции: Adil

Carlos

Участник
Модератор
Не знаю в этой ли теме пишу, если что прошу не ругаться.
Такая фигня вообщем: Есть 10 архивов.
При распаковке распаковываются все, кроме 6-ого архива...
Перелопатил весь скрипт. В чём ошибка не пойму. Все архивы сжаты одним методом, везде всё прописано одинаково, но почему-то именно этот 6-й архив не распаковывается..
в чём может быть проблема?

Из главного


Ну и в Исдоне тоже всё прописано одинаково.
 

LexBell

Борода
Супер модератор
Carlos, скрипт полностью и скрин папки с архивами.
 

Carlos

Участник
Модератор
http://rghost.ru/private/45482219/779f9ad36c1e6469213cd573920362c4

пароль: 1234




Даже переименовав архив 6 в архив 7,8,9 - инсталлятор его всё равно не распаковывает, но архивы 7,8,9 переименовав в архив 6 распаковываются нормально.
Походу проблема тут в самом архиве?!
 
Последнее редактирование:

LexBell

Борода
Супер модератор
Carlos, ну логично-же, что нужно показать код с распаковкой, а не головной скрипт? ну, или как попрошено - скрипт полностью. Что за люди... А по уточненным симптомам - да, косяк в упаковке либо отсутствие нужного параметра в распаковке. или нужного анпакера не хватает. или может необходим arс.ini, тот который при упаковке использовался.
В общем, все еще не хватает данных, для ответа без использования экстрасенса.
 

Carlos

Участник
Модератор
Gnom,
Проблема решилась упаковкой файлов с другим методом сжатия.

Но всё равно охота узнать проблему, почему же именно этот архив не распаковывался.

http://rghost.ru/45496906 - исдон
 

andrey_167

Новичок
Gnom,
Проблема решилась упаковкой файлов с другим методом сжатия.

Но всё равно охота узнать проблему, почему же именно этот архив не распаковывался.

http://rghost.ru/45496906 - исдон
попробуй провисать эту строку в is done думаю поможет if not ISArcExtract ( 0, 0, ExpandConstant('{src}\*.andrey_167'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
 

sergey3695

Ветеран
Модератор
Как сделать создание ярлыка на рабочем столе и папки в меню пуск после установки?
 

Carlos

Участник
Модератор
sergey3695,

[Icons]
Name: {userdesktop}\Название; Filename: {app}\Название.exe; IconFilename: {app}\Название.exe; WorkingDir: {app}\; Comment: "Запустить игру";
Name: {group}\{cm:UninstallProgram,Название}; Filename: {uninstallexe}; IconFilename: {app}\Название.exe; Comment: "Удалить игру";
Name: {group}\Название; Filename: {app}\Название.exe; IconFilename: {app}\Название.exe; WorkingDir: {app}\; Comment: "Запустить игру";
 

sergey3695

Ветеран
Модератор
Carlos, после установки. так-то и я знаю. как ярлык сделать, я где-то видел, а вот чтоб папку создать в меню пуск нет. вот и спросил. то что ты написал, это происходит во время установки.
 

Mailchik

Старожил
Проверенный
sergey3695, пример:
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху