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

Ученик_77

Участник
Прописал создание двух ярлыков в вышеупомянутом скрипте - http://krinkels.org/resources/r-g-igromany.124/.
Код:
Name: {group}\Far Cry 3; Filename: {app}\bin\farcry3.exe; WorkingDir: {app}Bin\; Parameters: -offline -language=Russian
Name: {group}\{cm:UninstallProgram, Far Cry 3}; Filename: {uninstallexe}; WorkingDir: {app}\; IconFilename: {app}\Far Cry 3 \bin\farcry3.exe; Parameters: -offline -language=Russian
Name: {userdesktop}\Far Cry 3 ; Filename: {app}\bin\farcry3.exe; WorkingDir: {app}\bin; Check: desktopicon; Parameters: "-offline -language=Russian"
Name: {userdesktop}\Far Cry 3_D11 ; Filename: {app}\bin\farcry3_d3d11.exe; WorkingDir: {app}\bin; Check: desktopicon; Parameters: "-offline -language=Russian"
Теперь при установке требуемое место под игру увеличивается в 2 раза.
Как "вылечить" сие ?
З.Ы. ХВ ! ))
 

vint56

Ветеран
Проверенный
Ученик_77,
#define NeedInstallSize "54584120000" ;в байтах требуемое место или сами файлы игры стали больше весить
 

Ученик_77

Участник
vint56, всё верно, там у меня прописан нужный размер, но вот что имеем во время установки:
А вот что после установки:
Код:
#define GameName   "Far Cry 3"
#define Publisher  "Ubisoft"
#define Version    "v1.05"
#define Langs      "RUS\MULTi13"
#define Crack      "ReLoaDeD"
#define ExeName    "Bin\farcry3.exe"
#define WorkingDir "Bin\"
#define SteamURL   "http://store.steampowered.com/app/220240/"
#define Soft

#define NeedInstallSize "11866631836"  ;в байтах требуемое место

#define Font "segoeui.ttf"
#define Font2 "corbel.ttf"
#define FontName   "Segoe UI"
#define FontName2  "Corbel"

[Setup]
AppName={#GameName}
AppVersion=1.05
DefaultDirName={pf}\{#GameName}
DefaultGroupName={#GameName}
DisableReadyPage=yes
DisableProgramGroupPage=yes
ExtraDiskSpaceRequired={#NeedInstallSize}
SetupIconFile=Img\icon.ico
AppPublisher=#Жук в Муравейнике
AppCopyright=#Жук в Муравейнике
WindowVisible=no
WindowShowCaption=no
WindowResizable=no
Compression=none
DiskSpanning=yes
DiskSliceSize=1610612736

[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl";
Name: "english"; MessagesFile: "compiler:Languages\English.isl";

[CustomMessages]
russian.Cancel=Выход
english.Cancel=Exit
russian.Cancel2=Отмена
english.Cancel2=Cancel
russian.BeginInstall=Начать Установку
english.BeginInstall=Install
russian.Information=Информация
english.Information=Information
russian.Information2=Пожалуйста, прочитайте важную информацию перед установкой.
english.Information2=Please read the important information before installing.
russian.SelectDir=Установить игру в:
english.SelectDir=Install game to:
russian.Settings=Настройки
english.Settings=Settings
russian.Install=Установить
english.Install=Install
russian.Installing=Установка
english.Installing=Installation
russian.WaitWhileInstall=Идет процесс установки, пожалуйста подождите.
english.WaitWhileInstall=Installation in progress, please wait.
russian.Finishing=Завершение
english.Finishing=Finilization
russian.Next=Далее
english.Next=Next
russian.Back=Назад
english.Back=Back
russian.Back2=Вернуться
english.Back2=Return
russian.Welcome=Вас приветствует мастер установки
english.Welcome=Welcome to installation program
russian.Warning=Рекомендуется выключить антивирусные пакеты, а также закрыть прочие приложения. Нажмите «Далее», чтобы продолжить, или «Назад» для возврата на предыдущую страницу.
english.Warning=It is recommended to switch off anti-virus packages and also to close other applications. Press "Next" to continue, or "Back" to return to the previous page.
russian.Version=»Steam-Rip - {#Version}
english.Version=»Steam-Rip - {#Version}
russian.Langs=»Язык - {#Langs}
english.Langs=»Language - {#Langs}
russian.Crack=»Таблетка - {#Crack}
english.Crack=»Crack - {#Crack}
russian.NoStartIcon=Не создавать папку в меню «Пуск»
english.NoStartIcon=Don't create a Start Menu Folder
russian.DesktopIcon=Создать ярлык на Рабочем столе
english.DesktopIcon=Create shortcut on Desktop
russian.SteamVersion=Steam-версия
english.SteamVersion=Steam-version
russian.CrackedVersion=Взломанная версия
english.CrackedVersion=Cracked version
russian.NeedInstallSize=Требуется места для установки:
english.NeedInstallSize=Required space for installation:
russian.Mb=Мб
russian.Gb=Гб
russian.Tb=Тб
english.Mb=Mb
english.Gb=Gb
english.Tb=Tb
russian.UnpackingArc=Распаковка архивов...
english.UnpackingArc=Unpacking archives...
russian.SoftwareInstalling=Установка дополнительного ПО...
english.SoftwareInstalling=Installing Additional SW...
russian.Success=Установка прошла успешно.
english.Success=Installation completed successfully.
russian.ISDoneError=Ошибка распаковки!
english.ISDoneError=Installation Error!
russian.InstallSoft=Установка дополнительного программного обеспечения
english.InstallSoft=Install additional software
russian.DesignAuthor=Автор дизайна: Avenger aka Avengerz13
english.DesignAuthor=Design creator: Avenger aka Avengerz13
russian.HelpInfo=Все права защищены © ....%nАвтор скрипта: Маиль%nАвтор релиза: #Жук в Муравейнике%nДанное программное обеспечение предоставлено в целях ознакомления.
english.HelpInfo=All rights reserved © ....%nScript Creator: Маиль%nRelease Creator: ....%nThanks: ....%nThis software is provided for informational purposes.
russian.RollBack=ООткат изменений...
english.RollBack=Rolling back changes...

[Files]
Source: "Game\*"; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension
Source: "Dll\*"; Flags: dontcopy;
Source: "Img\*"; Flags: dontcopy;


[Icons]
Name: {group}\Far Cry 3; Filename: {app}\bin\farcry3.exe; WorkingDir: {app}Bin\; Parameters: -offline -language=Russian
Name: {group}\{cm:UninstallProgram, Far Cry 3}; Filename: {uninstallexe}; WorkingDir: {app}\; IconFilename: {app}\Far Cry 3 \bin\farcry3.exe; Parameters: -offline -language=Russian
Name: {userdesktop}\Far Cry 3 ; Filename: {app}\bin\farcry3.exe; WorkingDir: {app}\bin; Check: desktopicon; Parameters: "-offline -language=Russian"
Name: {userdesktop}\Far Cry 3_D11 ; Filename: {app}\bin\farcry3_d3d11.exe; WorkingDir: {app}\bin; Check: desktopicon; Parameters: "-offline -language=Russian"
Не пойму от чего такая разница.
 

vint56

Ветеран
Проверенный
vint56, у меня показывает при #define NeedInstallSize "11866631836" ;в байтах требуемое место а ты попробуй через обзор установить на другой раздел что он покажет
 

Вложения

SBalykov

Старожил
Ученик_77
Код:
#define NeedInstallSize "11866631836" ;в байтах требуемое место
[Setup]
ExtraDiskSpaceRequired={#NeedInstallSize}
Указываете требуемое место, а затем столько же добавляете дополнительно.
Отсюда и двойной размер ...
 

Ученик_77

Участник
SBalykov, благодарю.
Убрал повтор.
Теперь всё ок. Выходит эта ошибка в скрипте от "издателя", думал эта строка ExtraDiskSpaceRequired={#NeedInstallSize} тоже нужна.
А можете мне ещё подсказать, как вы размер устанавливаемого прописываете, вот как тут - http://krinkels.org/threads/proshu-protestirovat-v-2.2988/page-2#post-26879.
В этом скрипте, с которым сейчас разбираюсь, после установки в "программах и компонентах" не отображается размер никак.
В вашем же напротив - всё точно.)
 

SBalykov

Старожил
Ученик_77
Данный параметр прописывается в реестре, в разделе "[Registry]" Вашего скрипта:
Код:
Root: HKLM; SubKey: {#Uninstaller}; ValueType: dword; ValueName: EstimatedSize; ValueData: {#SizeGame}; Flags: uninsdeletevalue uninsdeletekeyifempty
где
{#Uninstaller} - ID программы (в моем случае : "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{48EBEBBF-B9F8-4520-A3CF-89A730721917}"),
a {#SizeGame} - размер устанавливаемой игры "$00f2665e" в шестнадцатиричном представлении ...
 

Ученик_77

Участник
SBalykov, спасибо.
А как мне определять ID моих программ ?
Ведь по пути HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\
у меня много папок/разделов.)
 
Последнее редактирование:

SBalykov

Старожил
SBalykov, спасибо.
А как мне определять ID моих программ ?
Посмотреть в какой ветке реестра "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" прописывается Ваша программа,
либо сгенерировать.
Лучше всего, конечно, прочитать справку Inno Setup Help, раздел "Секция скриптов" ...
 

vint56

Ветеран
Проверенный
Ученик_77, Inno Setup Compiler инструменты создать GUID

#define SizeGame "11866631836"
#define Uninstaller "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AppId"

[Setup]
// Примечание: Значение AppId является уникальным идентификатором для этого приложения.
// Не используйте одно и тоже значение AppId для разных приложений.
// (Для создания нового значения GUID, выберите в меню "Инструменты" пункт "Создать GUID".)
AppId={{34969FCC-2A70-4073-912D-1BBD8D083A2A}
AppName=Far Cry 3 Deluxe Edition
AppVersion=v1.05
DefaultDirName={pf}\Far Cry 3 Deluxe Edition
ExtraDiskSpaceRequired={#SizeGame}

[Registry]
Root: HKLM; SubKey: {#Uninstaller}; ValueType: dword; ValueName: EstimatedSize; ValueData: {#SizeGame}; Flags: uninsdeletevalue uninsdeletekeyifempty
 
Последнее редактирование:

Ученик_77

Участник
SBalykov, vint56, признателен вам, как всегда =), попробую на новом скрипте - Far Cry уже раздаю, придётся ему в тираж идти с некорректным размероотображением.))

размер устанавливаемой игры "$00f2665e" в шестнадцатиричном представлении ...
.
Не подскажете как мне выяснять этот размер ?
На простой вариант типа "1234567" выдаёт ошибку при компиляции.
 
Последнее редактирование:

SBalykov

Старожил
Конвертер систем счисления
Для Windows необходимы значения в килобайтах.
Округляем значение в байтах 11866631836 до значения в килобайтах 11866632
конвертируем 11866632 в шестнадцатиричное значение => B51208
добавляем спереди $00 и получаем:
Код:
#define SizeGame "$00B51208"
#define Uninstaller "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{34969FCC-2A70-4073-912D-1BBD8D083A2A}"

AppId={{34969FCC-2A70-4073-912D-1BBD8D083A2A}
AppName = Far Cry 3 Deluxe Edition
AppVersion = v1.05
// если Вы делаете свои записи в реестре
CreateUninstallRegKey = no
// но при этом
Uninstallable = yes
UninstallFilesDir = {pf}\Far Cry 3 Deluxe Edition\UNINSTALL
DefaultDirName = {pf}\Far Cry 3 Deluxe Edition
// При значении
WindowVisible =no
// можно удалить (закоментировать)
;WindowShowCaption = no
;WindowResizable = no

[Registry]
Root: HKLM; SubKey: {#Uninstaller}; ValueType: dword; ValueName: EstimatedSize; ValueData: {#SizeGame}; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: {#Uninstaller}; ValueType: string; ValueName: QuietUninstallString; ValueData: """{app}\UNINSTALL\unins000.exe"" /SILENT"; Flags: uninsdeletevalue uninsdeletekeyifempty
 
Последнее редактирование:

nik1967

Old Men
Проверенный
Эээ... А если посмотреть в справке [Setup]: UninstallDisplaySize и не городить огород?
Example:
UninstallDisplaySize=1073741824
 

sergey3695

Ветеран
Модератор
У меня через код. думаю так проще.
Код:
//===== [Место после установки] =====\\: // в мб.
#define TotalNeedSize "18600"
//...
TotalNeedSize:= {#TotalNeedSize}*1024;
if IsWin64 then
  RegWriteDWordValue(HKLM,'Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{#AppId}_is1', 'EstimatedSize',TotalNeedSize)
else
  RegWriteDWordValue(HKLM,'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#AppId}_is1', 'EstimatedSize',TotalNeedSize);
 

SBalykov

Старожил
Ученик_77
Сколько людей, столько и мнений.
Выбор за Вами ...
 

Ученик_77

Участник
SBalykov, да я понимаю.
Спасибо вам всем за помощь.
Пока работаю с вашим вариантом, но не оч.успешно.))
Может где ошибаюсь, перепроверю и повторю.
sergey3695,
TotalNeedSize:= {#TotalNeedSize}*1024;
if IsWin64 then
RegWriteDWordValue(HKLM,'Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{#AppId}_is1', 'EstimatedSize',TotalNeedSize)
else
RegWriteDWordValue(HKLM,'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#AppId}_is1', 'EstimatedSize',TotalNeedSize);
Это в секцию [Registry] писать ?
 

SBalykov

Старожил
SBalykov, да я понимаю.
Спасибо вам всем за помощь.
Пока работаю с вашим вариантом, но не оч.успешно.))
Может где ошибаюсь, перепроверю и повторю.
sergey3695,

Это в секцию [Registry] писать ?
Вообще-то в секции Code ...
 

Ученик_77

Участник
SBalykov, делаю так, в списке установленных программ вообще ничего не отображается.
Врядли сам найду ошибку.))
Код:
#define GameName   "Metro 2033"
#define Publisher  "THQ"
#define Version    "v1.2"
#define Langs      "RUS\MULTi9"
#define Crack      "anonymous"
#define ExeName    "metro2033.exe"
#define WorkingDir "Metro 2033\"
#define SteamURL   "http://store.steampowered.com/app/43110/"
#define Soft

#define SizeGame "$0078BF6C"  ;в байтах требуемое место
#define Uninstaller "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{45EC12BE-B8E5-4949-8445-E32F264039C3}"
;#define TotalNeedSize "7537"

#define Font "segoeui.ttf"
#define Font2 "corbel.ttf"
#define FontName   "Segoe UI"
#define FontName2  "Corbel"

[Setup]
AppId={{45EC12BE-B8E5-4949-8445-E32F264039C3}
AppName={#GameName}
AppVersion=1.2
CreateUninstallRegKey=no
Uninstallable=yes
UninstallFilesDir={pf}\{#GameName}\UNINSTALL
DefaultDirName={pf}\{#GameName}
DefaultGroupName={#GameName}
DisableReadyPage=yes
DisableProgramGroupPage=yes
ExtraDiskSpaceRequired={#SizeGame}
SetupIconFile=Img\icon.ico
AppPublisher=#Жук в Муравейнике
AppCopyright=#Жук в Муравейнике
WindowVisible=no
;WindowShowCaption=no
;WindowResizable=no
Compression=none
DiskSpanning=yes
DiskSliceSize=1610612736

[Registry]
Root: HKLM; SubKey: {#Uninstaller}; ValueType: dword; ValueName: EstimatedSize; ValueData: {#SizeGame}; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: {#Uninstaller}; ValueType: string; ValueName: QuietUninstallString; ValueData: """{app}\UNINSTALL\unins000.exe"" /SILENT"; Flags: uninsdeletevalue uninsdeletekeyifempty
 

SBalykov

Старожил
SBalykov, делаю так, в списке установленных программ вообще ничего не отображается.
Врядли сам найду ошибку.))
Код:
#define GameName   "Metro 2033"
#define Publisher  "THQ"
#define Version    "v1.2"
#define Langs      "RUS\MULTi9"
#define Crack      "anonymous"
#define ExeName    "metro2033.exe"
#define WorkingDir "Metro 2033\"
#define SteamURL   "http://store.steampowered.com/app/43110/"
#define Soft

#define SizeGame "$0078BF6C"  ;в байтах требуемое место
#define Uninstaller "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{45EC12BE-B8E5-4949-8445-E32F264039C3}"
;#define TotalNeedSize "7537"

#define Font "segoeui.ttf"
#define Font2 "corbel.ttf"
#define FontName   "Segoe UI"
#define FontName2  "Corbel"

[Setup]
AppId={{45EC12BE-B8E5-4949-8445-E32F264039C3}
AppName={#GameName}
AppVersion=1.2
CreateUninstallRegKey=no
Uninstallable=yes
UninstallFilesDir={pf}\{#GameName}\UNINSTALL
DefaultDirName={pf}\{#GameName}
DefaultGroupName={#GameName}
DisableReadyPage=yes
DisableProgramGroupPage=yes
ExtraDiskSpaceRequired={#SizeGame}
SetupIconFile=Img\icon.ico
AppPublisher=#Жук в Муравейнике
AppCopyright=#Жук в Муравейнике
WindowVisible=no
;WindowShowCaption=no
;WindowResizable=no
Compression=none
DiskSpanning=yes
DiskSliceSize=1610612736

[Registry]
Root: HKLM; SubKey: {#Uninstaller}; ValueType: dword; ValueName: EstimatedSize; ValueData: {#SizeGame}; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: {#Uninstaller}; ValueType: string; ValueName: QuietUninstallString; ValueData: """{app}\UNINSTALL\unins000.exe"" /SILENT"; Flags: uninsdeletevalue uninsdeletekeyifempty
Вся проблема в том, что Вы беретесь за масштабные вещи, не вполне понимая, что-же это такое.
Начните с чего-нибудь попроще.
И да, чтобы Вам помочь, того "огрызка", что на Ваш взгляд необходим для оказания помощи, не достаточно ...
 
Сверху