![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
Новичок ![]() Группа: Сообщений: 27 Регистрация: 11.06.2009 Пользователь №: 9312 ![]() |
На вашем сайте я прочитал совет одного из ведущих постеров - что чтобы изучить флеш в действии, лучше скачать флеш, который нравится, и потом декомпилировать его в проект fla и изучать как он устроен. (при условии что он не защищен и т.п.)
я сегодня скачал Flash Decompiler Trillix 4.0 и декомпилировал 2 флешки. но они не пашут ![]() ![]() знающие люди, помогите пожалуйста. вот флешки которые ошибки дают. Сообщение отредактировал rustamh - 22.06.2009 - 13:38 |
|
|
![]()
Сообщение
#2
|
|
![]() Ветеран конференции ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 1179 Регистрация: 27.02.2009 Из: Moscow Пользователь №: 9144 ![]() |
Для начала лучше декомпилировать те флешки, которые ничего не подкачивают в себя (это один swf файл) и не взаимодействуют с сервером. И разумеется те, что не защищиены от декомпиляции.
Проверить это легко - надо вытащить swf-файл куда-нибудь на десктоп и запустить его. Если работает - то пробуем декомпилировать. -------------------- |
|
|
![]()
Сообщение
#3
|
|
Новичок ![]() Группа: Сообщений: 27 Регистрация: 11.06.2009 Пользователь №: 9312 ![]() |
Спасибо, заработало!
те флешки правда на десктопе работали. Я посмотрел один скрипт и мое 5-е чувство (или 6-е) подсказало, что он делает запрос на какой-то сервер. Просто удалил его - и за работало отлично. А эти флешки я кстати закачать хотел. выбрал файлы в прошлый раз а кнопку "загрузить" нажать видимо забыл ![]() (а нет - просто я флешки не могу загружать- должен их архивировать изначально) Оказывается декомпиляция - надежный способ изучения флеш. И chingachgoog был прав, когда советовал активно использовать его (вместо того, чтобы задавать вопросы вроде - "а как сделать меню как на таком-то сайте? а как сделать то-то, то-то?") После декомпиляции реально смотришь полюбившиеся флешки - как устроены изнутри, со всеми скриптами, кадрами, анимациями и т.д. и потихоньку въезжаешь в тему! Ну иногда могут возникать кое-какие проблемки конечно - тогда надо подключать голову и исправлять их. ![]() Сообщение отредактировал rustamh - 24.06.2009 - 10:16 |
|
|
![]()
Сообщение
#4
|
|
Новичок ![]() Группа: Сообщений: 27 Регистрация: 11.06.2009 Пользователь №: 9312 ![]() |
А вот одна флешка например на компьютере локально запускается (в черно-белом режиме правда). А вот после декомпиляции там получаются пустые скрипты - фигурные скобки и точки с запятой только.
Кто нибудь знает, с чем это может быть связано, и как это можно исправить? - Просто я хотел перевести эти важные флешки на русский язык. Помогите пожалуйста разобраться. Проблемные файлы - в прикреплении. (один - соответствие между солнечным и лунным календарем , а второй - фазы луны) в обоих вместо скриптов пустые скобки. Сообщение отредактировал rustamh - 24.06.2009 - 10:23
Прикрепленные файлы
![]() ![]() |
|
|
![]()
Сообщение
#5
|
|
![]() Ветеран конференции ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 1179 Регистрация: 27.02.2009 Из: Moscow Пользователь №: 9144 ![]() |
Скорее всего это как раз защищенные флешки. Похоже на защиту байт-кодом.
-------------------- |
|
|
![]()
Сообщение
#6
|
|
Ветеран конференции ![]() ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 4951 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата (а нет - просто я флешки не могу загружать- должен их архивировать изначально) rustamh Закачивание swf-файлов на сервер запрещено (в целях безопасности). Так что нужно архивировать их для закачки (все типы файлов желательно архивировать). Зато можно включать флешки прямо в пост на форуме (используя bb-код [flash]). Сами флешки м.б. расположены на любом веб сайте, например, можешь расположить свои флешки на своём сайте или на хостинге флеш файлов. -------------------- Best wishes & regards,
MustLive Администратор сайта http://mlfun.org.ua |
|
|
![]()
Сообщение
#7
|
|
Новичок ![]() Группа: Сообщений: 27 Регистрация: 11.06.2009 Пользователь №: 9312 ![]() |
спасибо, все понятно.
Вы молодцы ребята, очень помогаете. буду всем рекомендовать ваш форум. |
|
|
![]()
Сообщение
#8
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
Скажите а декомпиляция как то изменяет код? По коду можно понять что он декомпелирован?
|
|
|
![]()
Сообщение
#9
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Цитата Скажите а декомпиляция как то изменяет код? В большинстве случаев код конечно отличен от оригинала. Цитата По коду можно понять что он декомпелирован? Скорей всего возможно. |
|
|
![]()
Сообщение
#10
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
Это как то влияет на работу кода?
|
|
|
![]()
Сообщение
#11
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Цитата Это как то влияет на работу кода? Я не часто декомпилирую чужие программы, так что сказать точно не могу ![]() В большинстве случаев всплывают ошибки если попробовать скомпилировать декомпилированный код. Зависит от сложности кода и вообще структуры программы в целом, к тому же есть всякие программы, которые запутывают исходный код, чтобы в дальнейшем, после декомпиляции было тяжело понять что-либо в этом коде. |
|
|
![]()
Сообщение
#12
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
если я скину кусочек кода вы можете сказать по нему компилированный он или нет?
|
|
|
![]()
Сообщение
#13
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Не думаю, но кидайте, попробую.
|
|
|
![]()
Сообщение
#14
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
package classes.com.main
{ import caurina.transitions.*; import flash.display.*; import flash.events.*; import flash.text.*; public class htmlText extends flash.display.Sprite { public function htmlText(arg1:Number, arg2:Number, arg3:String, arg4:flash.text.StyleSheet, arg5:uint, arg6:Number, arg7:uint, arg8:Number, arg9:Number, arg10:Number, arg11:String) { var loc1:*=null; var loc2:*=NaN; scrollYmin = 0; super(); addEventListener(flash.events.Event.ADDED_TO_STAGE, addedToStage); arg3 = arg3.split("<b>").join("<span class=\'euroBold\'>"); arg3 = arg3.split("</b>").join("</span>"); arg3 = arg3.split("<i>").join("<span class=\'euroItalic\'>"); arg3 = arg3.split("</i>").join("</span>"); (loc1 = new flash.text.TextField()).embedFonts = true; loc1.styleSheet = arg4; loc1.autoSize = flash.text.TextFieldAutoSize.LEFT; loc1.antiAliasType = flash.text.AntiAliasType.ADVANCED; loc1.selectable = false; loc1.multiline = true; loc1.wordWrap = true; loc1.width = arg1; loc1.htmlText = "<span class=\'Euro\'>" + arg3 + "</span>"; scrollBG = new flash.display.Sprite(); scrollBG.graphics.beginFill(arg7); scrollBG.graphics.drawRoundRect(0, 0, arg6, arg2, arg8); scrollBG.graphics.endFill(); scrollBG.x = arg1 + 5; if ((loc2 = arg2 / (loc1.height / arg2)) < 20) { loc2 = 20; } |
|
|
![]()
Сообщение
#15
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Я бы сказал, что это декомпилированный код и к тому же не весь.
|
|
|
![]()
Сообщение
#16
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
об этом говорит вот это? loc1
я кусочек кода кинул... |
|
|
![]()
Сообщение
#17
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Например аргументы функции: arg1, arg2, ..., argN. Не думаю, что программист стал бы так вот называть их.
Цитата об этом говорит вот это? loc1 И это тоже. Такие имена скорей всего были сгенерированы декомпилятором. loc1, loc2, ... Цитата var loc1:*=null; var loc2:*=NaN; Это тоже выглядит подозрительно. Глядя на код видно, что loc1 является экземпляром TextField, а тип при объявлении не указан. Цитата (loc1 = new flash.text.TextField()).embedFonts = true; Использование полного имени класса при создании нового экземпляра в данном случае не оправдано. Цитата import flash.display.*; import flash.events.*; import flash.text.*; Все классы данных пакетов были импортированы. Так тоже делают редко, если только большинство классов из пакета не используется в коде. К остальному я не присматривался. |
|
|
![]()
Сообщение
#18
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
ясно. Короче шаблон декомпилированный править безсмысленно?
|
|
|
![]()
Сообщение
#19
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Сначала можно попробовать скомпилировать. Если всё заработает, стоит попытаться покопаться в коде для изменения его под себя.
|
|
|
![]()
Сообщение
#20
|
|
Новичок ![]() Группа: Пользователь Сообщений: 13 Регистрация: 22.03.2012 Пользователь №: 10945 ![]() |
в смысле скомпелировать? Я просто туп в этом...
|
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 1.07.2014 - 09:14 |