Как сделать репак(перепаковку) с помощью Inno Setup инструкция Качаем программу Inno Setup Ссылка нижеhttp://jrsoftware.org/ запускаем в 1 окне нажимаем создать скрин ниже Потом 2-е окно название сайт
Дальше в Картинках
3-е окно указываем путь до ехе файла и папки игры 4-е окно на ваше усмотрение 5-е пропускаем 6-е ставим галочки для языка инсталятора 7-е указывем путь сохранения и иконки 8-е получаем код который будем редактировать потом
код
Код:
#define MyAppName "Пишем назв игры" #define MyAppVersion "Версию" #define MyAppPublisher "назв компании" #define MyAppURL "Тут пишем любой сайт" #define MyAppExeName "Указываем название exe файла игры" [Setup] ; NOTE: The value of AppId uniquely identifies this application. ; Do not use the same AppId value in installers for other applications. ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) AppId={{48C60268-1E1F-4FA0-8097-1163B0D7FC2B} WizardImageFile=C:\inst\2.bmp - тут пишем путь до картинки кот будет в инстале(картинка слева размер 400х150) AppName={#MyAppName} AppVersion={#MyAppVersion} ;AppVerName={#MyAppName} {#MyAppVersion} AppPublisher={#MyAppPublisher} AppPublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={pf}\{#MyAppName} DefaultGroupName={#MyAppName} OutputDir=Указываем путь куда репак будет сохранен OutputBaseFilename=setup название Compression=lzma2/ultra64 добавил от себя для сжатия SolidCompression=true добавил от себя для сжатия InternalCompressLevel=ultra64 добавил от себя для сжатия UninstallFilesDir={pf} добавил от себя для удаления [Languages] Name: "english"; MessagesFile: "compiler:Default.isl" Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl" [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1 [Files] Source: "Указываем путь до exe файла игры и папки"; DestDir: "{app}"; Flags: ignoreversion [b]Пример ниже[/b] Source: D:\Games\Age of Conan\ConanPatcher.exe; DestDir: {app}; Flags: ignoreversion Source: D:\Games\Age of Conan\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs [Icons] Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}" Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon
Редактируем код потом просто не нужно будет делать по пунктам а просто указать в коде данные и в проге нажать компилировать Ниже я распишу какие команды за что отвечают чтобы было проще при редактировании
Код:
#define MyAppName "Пишем назв игры" #define MyAppVersion "Версию" #define MyAppPublisher "назв компании" #define MyAppURL "Тут пишем любой сайт" #define MyAppExeName "Указываем назв-е exe файла игры" [Setup] ; NOTE: The value of AppId uniquely identifies this application. ; Do not use the same AppId value in installers for other applications. ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) AppId={{48C60268-1E1F-4FA0-8097-1163B0D7FC2B} WizardImageFile=C:\inst\2.bmp тут мы ставим картинку в инсталятор(главное указать путь и картинка в bmp формате) AppName={#MyAppName} DiskSpanning=true для разделения файлов чтобы инсталл был не одним файлом(действует более 2гб) AppVersion={#MyAppVersion} ;AppVerName={#MyAppName} {#MyAppVersion} AppPublisher={#MyAppPublisher} AppPublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={pf}\{#MyAppName} DefaultGroupName={#MyAppName} OutputDir=Указываем путь куда репак будет сохранен OutputBaseFilename=Название setup Compression=lzma2/ultra64 это я добавил для сжатия SolidCompression=true это я добавил для сжатия InternalCompressLevel=ultra64 это я добавил для сжатия UninstallFilesDir={pf} это для удаления [Languages] выбор языка в инсталяторе если нужен Name: "english"; MessagesFile: "compiler:Default.isl" Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl" [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1 [Files] Source: "Указываем путь до exe файла и папки с игрой "; DestDir: "{app}"; Flags: ignoreversion Source: D:\Games\Age of Conan\ConanPatcher.exe; DestDir: {app}; Flags: ignoreversion Source: D:\Games\Age of Conan\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs до папки с игрой вывод иконок в меню и на раб стол [Icons] Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}" Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon Вывод надписи ссылки внизу инсталятора [Messages] BeveledLabel= SETUP by IGOR
готовим себе сразу переменную для имени файла и папки-источника (так проще когда часто приходится версии упаковывать)
Код:
OutputBaseFilename={#MyAppVerName}_setup
вот собственно так и используем эту новую переменную-Описание некоторых параметров (даны комментариями к коду)
Код:
; используем непрерывное сжатие SolidCompression=yes ; отобразить перед установкой все выбранные параметры ShowTasksTreeLines=True ; подтверждать о создании новой папки куда ставим или что она не пустая EnableDirDoesntExistWarning=True ; прикрутить иконку к деинсталятору (для красивости) UninstallDisplayIcon={uninstallexe} ; внутреннее сжатие в инсталяторе, если игра НЕ для 64-хбитных систем - НЕ используйте ultra64 - установщик может дать сбой InternalCompressLevel=ultra ; показывать перед установкой также в какой папке меню Пуск будут иконки AlwaysShowGroupOnReadyPage=True ; показывать перед установкой также в какую директорию установится игра AlwaysShowDirOnReadyPage=True ; сжатие файлов в инсталяторе, если игра НЕ для 64-хбитных систем - НЕ используйте lzma2/ultra64 - установщик может дать сбой Compression=lzma2/ultra ; смело вписывайте себя - эта информация будет сохранена после установки в информации про игру AppCopyright=DDayver ; а здесь будет сохранено в исполняемом файле инсталятора автора VersionInfoCopyright=DDayver ; версия игры в виде хх.yyy.zzz.nnnnn (если версия, указанная в MyAppVersion подходит под эти параметры - смело указывается {#MyAppVersion} VersionInfoVersion=0.16.06.18 ; здесь мы показываем кто опубликовал этот репак VersionInfoCompany={#MyAppPublisher} ; описание репака VersionInfoDescription={#MyAppName} v{#MyAppVersion} ; версия в текстовом виде VersionInfoTextVersion={#MyAppVersion} ; название репака VersionInfoProductName={#MyAppName} ; версия игры в виде хх.yyy.zzz.nnnnn (если версия, указанная в MyAppVersion подходит под эти параметры - смело указывается {#MyAppVersion} VersionInfoProductVersion=0.16.06.18 ; название продукта в текстовом виде VersionInfoProductTextVersion={#MyAppName} v{#MyAppVersion}
Собственно описательная часть это "рюшечки", но иногда полезно дать подробную информацию о репака в самом репаке. Изблыточность (повторение информации) связана с тем, что разные форточки по разному читают информацию.-
Добавляем иконку для ярлыка-ссылки и папку с файлами игры. Очень рекомендую при добавлении папки использовать вот эти флаги: "sortfilesbyextension sortfilesbyname" - перед упаковкой файлы будут отсортированы по расширениям, а затем по имени - иногда позволяет при упаковке выиграть до 10-15%.-
Тут чуть поподробней на примере {group}: Name: "{group}\{#MyAppName}" - имя иконки Filename: "{app}\{#MyAppExeName}" - путь к запускаемому файлу игры WorkingDir: "{app}" - раболчая директория для запуска игры, старайтесь не пренебрегать этим параметром. IconFilename: "{app}\{#MyAppExeName}" - путь к файлу с иконкой (может отличаться от пути к запускаемому файлу, например при таблетке SSE Comment: "{#MyAppName} v{#MyAppVersion}" - описательная часть ярлыка (видно при наведении курсора на ярлык) Для ярлыков на рабочем столе обязательно добавляем "; Tasks: desktopicon" Для ярлыков в панели быстрого запуска обязательно добавляем "; Tasks: quicklaunchicon"-
Здесь мы предлагаем вариант запуска игры после установки. И опять же не забываем о "WorkingDir: "{app}";" - Вот пока такой пример кода :) По мере свободного времени буду дополнять вариациями для 64-хбитных ОС, на случай если ярлыков надо сделать несколько (для разных запускаемых файлов) и т.д. и т.п.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
!ВНИМАНИЕ!
Сайт не предоставляет электронные версии произведений, а занимается лишь коллекционированием и каталогизацией ссылок, присылаемых и публикуемых на форуме нашими читателями. Если вы являетесь правообладателем какого-либо представленного материала и не желаете, чтобы ссылка на него находилась в нашем каталоге, свяжитесь с нами, и мы незамедлительно удалим её. Файлы для обмена на трекере предоставлены пользователями сайта, и администрация не несёт ответственности за их содержание. Просьба не заливать файлы, защищенные авторскими правами, а также файлы нелегального содержания!