Донецкий техникум промышленной автоматики

Як відредагувати SWF-файл?

Часом, при роботі з SWF-файлами часто виникає ситуація, коли необхідно внести правки в готове "творіння", не маючи при цьому вихідного FLA- файлу. Це може бути все, що завгодно: зміна тексту, картинок, звуків і т.д., при цьому в окремих випадках зовсім не обов'язково вдаватися саме до тих інструментів, за допомогою яких був створений файл. Основна складність полягає в тому, що SWF-файл - це вже скомпільований FLA-файл. При наявності останнього, користувач має можливість бачити всю структуру файлу, SWF ж містить мінімум інформації. Після компіляції SWF-файл можна імпортувати в Flash, проте без додаткового ПЗ відновити його структуру навряд чи вдасться. Відповідно, для внесення правок необхідно декомпілювати SWF-файл.

Така ситуація породила масу програм, таких як: Sothink SWF Decompiler, Eltima Flash Decompiler Trillix, Power Flash Decompiler і ще безліч різних утиліт. У цій статті ми наведемо приклади і параметри деяких декомпілятори, а так само розглянемо сам процес декомпіляцію на прикладі програми Sothink SWF Decompiler.

Sothink SWF Decompiler - це програма для захоплення, і декомпіляцію файлу SWF в FLA, а також для вилучення з нього різних ресурсів. Програма дозволяє витягувати зображення, шрифти, звуки і т.д. з готових SWF-файлів і вважається однією з кращих програм для декомпіляції.

Для людини, знайомого з такою системою, не важко буде за допомогою програми "розібрати", а потім заново "зібрати" SWF-файл. Для любителів ж це може виявитися досить складним завданням. Отже, як виглядає процес декомпіляцію в Sothink SWF Decompiler?

Почнемо з інтерфейсу. Власне, головне вікно програми виглядає так:

Власне, головне вікно програми виглядає так:

зліва розташовується провідник по каталогам комп'ютера (Multifile Export), в центрі - екран, де можна переглянути флеш-ролик, праворуч же можна бачити вікно (Resources), в якому відображаються складові частини ролика (вони з'являються після "розборки" файлу програмою за допомогою команд Exports FLA File і Exported FLA File Version).

зліва розташовується   провідник   по каталогам комп'ютера (Multifile Export), в центрі - екран, де можна переглянути флеш-ролик, праворуч же можна бачити вікно (Resources), в якому відображаються складові частини ролика (вони з'являються після розборки файлу програмою за допомогою команд Exports FLA File і Exported FLA File Version)

Команда Exports FLA File простіша, команда Exported FLA File Version дозволяє вибрати версію файлу для FLA, який ви збираєтеся експортувати (програма підтримує формати Flash 6, Flash MX 2004 року (7.0), Flash 8, Flash CS3 (9.0) і Flash CS4 (10.0 ).

Для прикладу, скористаємося командою Exports FLA File.

Додаємо файл в список для декомпіляції, а потім зберігаємо його. Для цього в віконці натискаємо на Add file, вибираємо потрібний файл. Потім натискаємо на піктограму біля рядка Export Path.

Потім натискаємо на піктограму біля рядка Export Path

Після цього можна побачити, що файл додався до списку ліворуч, у вікні попереднього перегляду програється ролик, а в панелі праворуч з'явилися складові файлу. Далі звернути увагу слід саме на них.

Як з ними працювати? Щоб переглянути компоненти файлу і знайти шукані, необхідно просто вибрати їх зі списку (обраний компонент відобразиться в центральному вікні попереднього перегляду).

Далі потрібно декомпілювати і Сохань кожен з компонентів. Для цього у вікні Resources вибираємо команду Export FLA і натискаємо на Export, після чого отримуємо самостійний компонент (.fla-файл), з яким можна спокійно працювати у флеш-редакторі.

Трохи нюансів: в залежності від необхідності, можна зберегти всі компоненти файлу окремо (встановивши галочку навпроти графи Export Resources) або ж зберегти тільки деякі необхідні компоненти. В останньому випадку потрібно буде провести додаткові настройки. Для цього потрібно вибрати режим декомпіляцію Export Resources. Потім вибрати меню Option, і під сплив вікні, виділити формати файлів, які вам потрібно зберегти.

Потім вибрати меню Option, і під сплив вікні, виділити формати файлів, які вам потрібно зберегти

Далі все стандартно, потрібно клікнути на кнопку OK, а потім на Export. Таким чином, збережуться тільки файли обраних вами форматів.

Як вже говорилося, Sothink SWF Decompiler є однією з найпоширеніших програм для декомпіляції SWF-файлів, а також вважається однією з найстабільніших.

Крім усього іншого, програма також включає в себе цікавий інструмент SWF Catcher, який дозволяє захопити flash-анімацію, яка перевірялася за допомогою браузерів Internet Explorer або Firefox.

В общем-то, процес декомпіляцію SWF-файлів схожий в різних програмах-декомпілятори. Тому ми не будемо розглядати декомпіляцію на прикладі інших програм, яких досить багато, проте наведемо деякі характеристики найбільш популярних з них.

Sothink SWF Decompiler

www.sothink.com/product/flashdecompiler/

Вартість: 79.99 $

можливості:

  • Підтримує Action Script v. 2.0 і v.3.0
  • Можливість пошуку в вихідному коді Action Script - Конвертація SWF в FLA і під FLEX
  • Витяг SWF з EXE
  • Попередній перегляд і експорт ресурсів файлу
  • Експорт ActionScript файлу в AS і HTML формати
  • Є плеєр для програвання флеш-файлів
  • Детальний перегляд властивостей елементів в Flash-ролику
  • Підтримка сканування кеша IE і виведення списку всіх переглянутих вами Flash-файлів


Flash Decompiler Trillix

www.flash-decompiler.com

Вартість: 79,95 $

можливості:

  • Підтримує Action Script v. 2.0 і v.3.0
  • Можливість експорту флеш-роликів в такі формати як AVI, MPEG і т.д.
  • Можливість детальної настройки конвертації SWF в FLA
  • Можливість декомпілювати і конвертувати одночасно декілька флеш-роликів
  • Можливість редагування об'єктів файлу без конвертації в FLA
  • Витяг ресурсів файлу в різні формати
  • Є вбудований програвач Flash-файлів
  • Можливість збереження Flash-роликів онлайн
  • Зручний інтерфейс: масштабований, стрічка панелі інструментів


SWF Decompiler Magic

www.flashdecompiler.us

Вартість: 44,95 $

  • Конвертація SWF в FLV і EXE
  • Можливість експорту даних з флеш-файлу в FLA-файл:
    • Експорт звуків і відео з флеш-файлу
    • Експорт тексту, форм, кнопок, зображень, шрифтів і фреймів з флеш-файлу
    • Експорт скриптів з флеш-файлу
  • Огляд і попередній перегляд ресурсів перед експортом
  • Підтримка редагування динамічного тексту у флеш-файлі
  • Підтримка переміщення зображень у флеш-файлі
  • Перегляд детальної інформації про кожен об'єкт з флеш-ролика

Що хочеться ще додати про флеш-декомпілятори? На перший погляд, працювати з ними досить просто, і в певній мірі так воно і є. Однак, при декомпіляції SWF-файлів можуть виникнути складності, так як при використанні подібних програм можуть виникати помилки в коді, які доведеться виправляти "вручну". А для користувача, незнайомого з мовою Action Script це може виявитися дуже складним завданням.

Absinthium

Отже, як виглядає процес декомпіляцію в Sothink SWF Decompiler?
Як з ними працювати?