Настановні, або виконувані файли (installation files), іноді називаються двійковими. Тому як їх формат являє собою суцільну послідовність двійкових значень. В обчислювальній техніці інсталяційний файл викликає комп’ютер для виконання зазначених завдань у відповідності з закодованими інструкціями. Цим він відрізняється від звичайного документа, який повинен бути тільки прочитаний. Файл з ім’ям, що закінчуються на .exe є програмою, яка при відкритті примушує операційну систему запустити додаток.
Призначення і виконання файлів
Такі installation files можуть бути написані вручну на машинній мові, хоча набагато зручніше розробляти програмне забезпечення у вигляді вихідного коду на мові високого рівня, який може бути легко зрозумілий програмістом. У деяких випадках вихідний код може бути вказаний на мові асемблера, який тісно пов’язаний з інструкціями машинного коду. Мова високого рівня скомпільовані або в інсталяційний файл машинного коду, або в об’єктний.
Кілька останніх, пов’язані між собою, можуть створити installation files. Вони мають формат контейнера, у вигляді інсталяційного і пов’язаної форматів (ELF). Це структурує згенерований машинний код, наприклад сегментуючи його на розділи:
- .text – інсталяційний код;
- .data – статичні змінні;
- .rodata – статичні константи.
Для виконання системою інсталяційний файл повинен відповідати двійковому інтерфейсу системного застосування (ABI). Найбільш просто він виконується шляхом завантаження в пам’ять і простого переходу до початку адресного простору і виконання його звідти. Але в більш складних інтерфейсах installation files мають додаткові метадані, що визначають окрему точку входу. Наприклад, в ELF точка входу вказується в заголовку в e_entity поле, що визначає адресу віртуальної пам’яті, з якого починається виконання. У GCC (GNU Compiler Collection) це поле встановлюється компонувальником на основі _start символу.
Структура і функції запуску
Інсталяційні файли, як правило, включають в себе систему, контролюючу час виконання, з реалізацією функції мови, а також планування завдань, обробку винятків, виклик статичних конструкторів і взаємодії з операційною системою. Наприклад, передачу аргументів, середовища і повернення стану виходу разом з іншими функціями запуску і завершення роботи, такими, як звільнення ресурсів. Для C це робиться шляхом зв’язування об’єкта “crt0”, який містить фактичну точку входу і виконує настройку і завершення роботи, викликаючи бібліотеку часу виконання.
Таким чином, файли Windows зазвичай містять значний додатковий машинний код, крім того, який генерується безпосередньо з вихідного. У деяких випадках бажано його пропустити, наприклад при розробці вбудованих систем або просто при вивченні того, як працюють компіляції, компонування та завантаження. В C це можна зробити, пропустивши звичайне середовище виконання і замість цього вказавши сценарій конструктора, який генерує точку входу і обробляє запуск і завершення роботи, наприклад, викликаючи mainstart і повертаючи стан виходу ядра в кінці операції.
Види розширень
Інсталяційний файл “Віндовс” також називається двійковим. Програма – це послідовність інструкцій, зрозуміла центрального процесора (ЦП) комп’ютера, які він повинен виконувати з набором даних.
Розширення файлів Windows: .EXE, .COM, .BAT, .VB, .VBS, .WSF, .PIF.
Розширення файлів Macintosh: .APP .SCPT, .APPLESCRIPT.
Установка може бути реалізована у вигляді трьох форматів:
MSI можуть бути тільки настановними, а EXE, навпаки, можуть бути буквально всім, що може працювати на комп’ютері. Виконувані файли складаються з інструкцій, які були переведені з вихідного коду в машинний, також званий машинним мовою або об’єктним кодом, з використанням спеціалізованої скомпілованої програмою. Код машини повністю складається з нулів та одиниць, які представляють стан логічних схем процесора і комірок пам’яті.
Запускаються файли EXE
Інсталяційні програми виконує код або серію інструкцій, що містяться в них. Два основних типи: скомпільовані програми і сценарії.
У системах Windows скомпільовані програми мають розширення EXE. На комп’ютерах Macintosh скомпільовані програми мають розширення APP. Обидва типи виконуваних файлів компілюються з вихідного коду в двійковий машинний, який безпосередньо виконується процесором. EXE працюють тільки в Windows, а APP – в Mac OS X. Це пов’язано з тим, що код виконується операційною системою і тому повинен компілюватися в форматі їй зрозумілою.
Не скомпільовані виконувані файли часто називають скриптами. Вони зберігаються в текстовому форматі, а не в двійковому. Іншими словами, можна відкрити сценарій і переглянути код в текстовому редакторі. Оскільки сценарії не містять виконуваного машинного коду, для їх роботи потрібна інтерпретатор. Наприклад, файл PHP може виконувати код тільки при запуску через інтерпретатор PHP. Якщо він недоступний, то скрипт PHP можна відкрити лише у вигляді текстового документа.
Оскільки виконувані файли запускають код при відкритті, користувач не повинен відкривати невідомі, особливо ті, які отримані у вигляді вкладень електронної пошти. Такі скомпільовані виконувані файли є найбільш небезпечними і можуть запускати шкідливий код. Наприклад, VBScript (.VBS) можуть автоматично запускатися у системах Windows через вбудований Windows Script Host. Аналогічно AppleScript (.SCPT) можуть запускатися через інтерпретатор AppleScript, включений в Mac OS X.
Користувальницький інтерфейс MSI
MSI – файли баз даних, використовувані інсталятор Windows. Вони містять інформацію про програму, яка розділена на функції та компоненти, кожний компонент може містити дані реєстру. Ярлики MSI містять користувальницький інтерфейс, що використовуються для встановлення, та інші дані у вигляді попередніх умов. Він також може містити фактичні файли, які повинні встановлюються самостійно, в даний час це рекомендований спосіб установки MSI в Windows. Альтернативою є написання програми, яка самостійно виконує установку.
MSI виконуються EXE, який є частиною Windows і називається MSIEXEC.EXE. Це додаток зчитує дані в MSI і виконує процес.
Алгоритм запуску файлів MSI:
Запуск для системи DOS
Для того щоб запустити файл з MS-DOS запускають виконуваний тип, який представляє собою .exe, .bat або .com. Для перевірки, які документи в поточному каталозі є виконуваними, використовують команду “dir” запрошення MS-DOS. Цим способом можна визначити ресурс з установочними файлами .exe або замінити їх на .bat або .com. Після того як визначено ім’я виконуваного типу, вводять його ім’я в командному рядку MS-DOS. Наприклад, якщо виконуваний файл – game.exe, вводять в командному рядку “game”.
Якщо не знаходиться файл або надходить повідомлення про помилку, наприклад “невірна команда або ім’я файлу”, швидше за все, цей файл відсутній в поточному каталозі. Переходять в каталог виконуваного і знову вводять команду. Важливо пам’ятати, що при запуску його з оболонки MS-DOS (MS-DOS в Windows) програма все одно буде використовувати Windows для запуску.
Створення директив для Windows
Кожний додаток має бути скопійовано на ПК з певною структурою каталогів, яка гарантує його правильне функціонування. Можна застосувати спеціальне ПО, наприклад Inno Setup, що дуже корисно при створенні виконуваних файлів (EXE), які діють як установників додатків під Windows.
Основні переваги безкоштовного ЗА полягають в тому, що воно володіє великою кількістю функцій, які працюють практично у всіх системах Windows (7, 2008 R2, Vista, XP, 2008, 2003, 2000, Me, 98, 95 і NT 4.0. 32-біт і 64-біт). Для початку рекомендується використовувати майстер, а потім вбудований редактор сценаріїв для розширеної компіляції файлів установки.
У папці Inno Setup Example Scripts є безліч прикладів шаблонів різних моделей установників додатків, попередньо рекомендується спробувати їх все, щоб отримати уявлення про діапазон доступних варіантів.
Досвідчені користувачі цього програмного забезпечення можуть створювати свої власні сценарії і змінювати їх, створюючи потужні файли для застосунків. Рекомендується переглянути включений довідки, щоб отримати додаткову інформацію про доступні команди.
Знаходження розташування installation files
Для того щоб визначити, які файли настановні, найпростіше поглянути на властивості ярлика. Послідовність дій:
Архівування ігри
Для того щоб перетворити гру в один EXE використовують популярний архіватор WinRAR, створюють новий архів і називають його. Копіюють туди всі ігрові дані .exe-файл шрифту, Unity exe та інше. Натискають SFX, потім додаткові параметри. Це перетворить весь RAR в програму, яка буде витягувати себе, а потім запускати гру.
Здійснення налаштування:
Метод створення IExpress
IExpress – це утиліта, що поставляється в комплекті з версіями Windows, починаючи з Windows XP і вище. Утиліта поставляється з графічним інтерфейсом, званим IExpress Wizard. І також можна створювати настановні файли, використовуючи файли SED, написані вручну з використанням майстра.
Як і у 7-Zip вище, цей метод створює саморозпаковується архів з двома основними відмінностями. По-перше, кінцевий користувач буде проходити через багатосторінковий майстер установки, і по-друге, кінцевий користувач може вказати теку, в якому знаходиться інструмент і розпакує файли.
Порядок створення установника EXE з допомогою IExpress:
Пакет додатків, який об’єднує всі документи в один, званий інсталяційний файл, спрощує розгортання і налаштування їх на комп’ютерах користувачів. Налаштування знижує загальну вартість володіння ресурсом, дозволяючи ефективно встановлювати і налаштовувати програми. У результаті виходить пакет, який надає продукту нові можливості, такі як оголошення функцій без їх встановлення, інсталяція продуктів за запитом, додавання користувацьких налаштувань та інші.