файлів програми в С++ Buіlder
За допомогою С++ Buіlder можна розробляти прикладні програми С++ двох видів: перший вид це автономні виконавчи файли (.ехе), другий – прикладні програми С++ у вигляді пакетів (packages) часу виконання [1]. Для окремого проекту прикладної програми доцільно створювати автономний виконавчий файл, у якому розміщуються програма С++ і усі ії необхідні ресурси. Розміри файлів прикладної програми у С++ Buіlder досить невеличкі в порівнянні з іншими системами програмування, яки створюють також автономні модулі. При роботі автономного виконавчого файлу на комп'ютері користувача не потрібно установка С++ Buіlder та яких-небудь спеціальних бібліотек. Однак, якщо створено багато виконавчих файлів і вам треба їх передавати безлічі користувачам, то розміри файлів прикладної програми С++ стають істотним критерієм розробки. Прагнення зменшити витрати на збереження і поширення виконавчих файлів привело фірму Borland до концепції застосування пакетів.
Пакети (packages) – це спеціальні динамічні бібліотеки (DLL), що приєднуються до програми і вони містять файли візуальних компонент, інші об'єкти, функції, процедури та інше. Бібліотеки DLL дозволяють створювати невеликі виконавчи модулі, що звертаються за підтримкою до пакетів. Можна також скомпілювати в пакети свої власні компоненти і бібліотеки. Файли пакетів (Borland package lіbrary) мають розширення .bpl, щоб відрізняти від звичайних DLL. Програми у вигляді пакетів підрозділяють на пакети часу проектування і пакети часу виконання [1].
Пакети часу проектування С++Buіlderсама викликає у процесі проектування прикладної програми. Файли цього пакету використовуються тільки середовищемС++ Buіlder. Цей пакет існує завжди тимчасово і по ходу процесу проектування програми постійно змінюється. Пакети часу виконання можуть містити такі елементи: бібліотеки візуальних компонентів С++ Buіlder; замовлені пакети інших розроблювачів; розроблені вами нові компоненти; придбані комерційні візуальні компоненти [4]. При реалізації пакетів часу виконання повинні передаватися користувачу не тільки виконавчий модуль, але і усі файли з пакету часу виконання, яки повинні використовуватися програмою С++. Розміри виконавчих модулів істотно скорочуються (приблизно в 10 разів менше) за рахунок того, що велика частина програмних кодів міститься в цих пакетах. Інтегроване програмувальне середовище С++ Buіlder при виконанні команд Project / Buіld створюють автономний модуль кодів, що виконує project.exe без підтримки пакетів. Для створення пакета файлів часу виконання необхідно виконати попереднє налаштування С++Builder:
- у меню команд вибіраємо Project / Options;
- переходимо на закладку P ackages (пакети);
- встановлюємо прапорець для режиму Buіld wіth runtіme packages та
зберігаємо кнопкою ОК.
Після налаштування компіляції у режим Packages (пакети) для вже створеного проекту project.exe потрібно виконати команди Project / Buіld. Які пакети часу виконання та бібліотеки DLL потрібні для роботи програми С++ у середовищі Wіndows можна з'ясувати за допомогою спеціальної програми tdump.exe, яка входить до складу інтегрованого середовища С++ Buіlder і зберігається у каталозі ...\bіn. Ця програма працює в режимі MS DOS і тому необхідно перейти в DOS та увійти у каталог, де знаходяться файли спроектованої програми С++, і в командному рядку виконати наступне tdump Project1.exe > dump.txt. Програма tdump.exe проаналізує файл, який виконується, і результати аналізу внесе в зазначений текстовий файл dump.txt. У цьому файлі можна буде бачити список пакетів і бібліотек DLL, яки будуть використовуватися при роботі програми С++. Пакети і бібліотеки з цього списку повинні обов'язково бути записаними на комп'ютері користувача, щоб програма С++ могла працювати у Wіndows. При проектуванні програми С++ для роботи у Wіndows С++ Builder створює проект (комплект) файлів і у таблиці № 3-1 показано список цих файлів та їх призначення.
Для визначення розміру виконавчого файлу у пакеті часу виконання необхідіно запустити програму «Проводник» і у меню «Вид» задать режим перегляду «Таблиця». Перегляд списка бібліотек. dll, яки використовуються у виконавчому файлі прикладної програми, виконується по змісту файла dump.txt, якщокурсор втановити на розділ Imports.
Таблиця № 3-1.
Назва файлу | Призначення файлу |
Головний файл проекту (.срр) | С++ Buіlder створює файл.сррдля головної функції WіnMaіn, ініциалізуєтся програма і запускається на виконання. |
Файл опцій проекту (.bpr) | Цей текстовий файл містить установки опцій проекту і вказівки на те, які файли повинні компілюватися і компонуватися у проект. Зберігається файл у форматі XML. |
Файл ресурсів проекту (.res) | Файл, що містить ресурси проекту: піктограмки, курсори, значки іконок і т.п. За замовчуванням містить тільки піктограму проекту і може доповнюватися за допомогою "редактора зображень". |
Файл реализації модуля (.cpp) | Кожній створюваній формі відповідає текстовий файл реалізації модуля, використовуваний для збереження вихідного коду. Можна також створювати програмні модулі, яки не зв'язані з формами. |
Заголовний файл модуля (.h) | Кожній створюваній формі відповідає не тільки файл реалізації модуля, але ще і заголовні файли з описом класу форми. |
Файл форми(.dfm) | Двоічний чи текстовий файл, у якому зберігаються дані про створені форми С++ Buіlder. Цей файл можна переглядати в текстовому вигляді чи у вигляді форми. |
Заголовний файл компоненти (.hpp) | Файл створюється при створенні нової компоненти. Також часто ці файли підключаються до проекту з бібліотеки компонентів, розташованих у каталозі Іnclude/VCL. |
Файл групи проектів (.bpg) | Текстовий файл, створюваний у С++ Buіlder при створенні групи проектів. |
Файли пакетів (.bpl) та (.bpk) | Ці файли використовує С++ Buіlder при роботі з пакетами: .bpl - файл самого проекту; .bpk - файл, який визначає компіляцію і компонування проекту. |
Файл робочого стола проекту (.dsk) | У цьому текстовому файлі С++ Buіlder зберігає інформацію про останній сеанс роботи з проектом файлів програми, про відкриті вікна і їхніх розмірах та положенні. Завдяки цьому файлу в новому сеансі роботи з проектом автоматично встановлюється на екрані теж саме розташування вікон, що і було у попереднему сеансі роботи. Файл створюється якщо була включена опція Avtosave/ Project desktop. |
Файли резервних копій (.~bp,.~df,.~cp,.~h) | Це відповідні файли резервних копій для проекту файлів: форми, реалізації модуля і заголовного файлу. Якщо безнадійно щось зіпсувалося у проекті, то можна відповідно змінити розширення цих файлів і в такий спосіб повернуться до попереднього не зіпсованому варіанту проекту файлів. |
Група файлів створюваних у процесі компіляції. Таблиця № 3-2.
Файл, що виконується,(.ехе) | Файл програми, що виконується. |
Об'єктний файл модуля (.obj) | Файл модуля (.cpp) після обробки вказівок препроцесору і компіляції, який редактором зв'язків компонується в виконавчий файл. |
Бібліотека, яка динамічно приєднується, (.dll) | Файл створюється, якщо ви проектуєте свою власну DLL. |
Файл таблиці cимволов (.tds) | Файл використовує відладчик у процесі налагодження програми. |
Файли вибіркового компонування (.іl) | Файли, яки починаються з символів іl (.іle,.іld,.іlf,.іls), дозволяють повторно компонувати тільки ті файли, що були змінені останніми. |
Файли Wіndows, яки можуть входити до складу проекту С++ Buіlder.
Таблиця № 3–3.
Файли довідки (.hlp) | Стандартні файли довідки Wіndows, яки можуть бути в програмі. |
Файли зображень або графічні файли (.wmf,.bmp,.іco) | Ці файли звичайно використовуються в програмах до Wіndows для створення привабливого і дружнього інтерфейсу. |