![]() |
eXeL@B —› Вопросы новичков —› Подскажите, в какую сторону копать... |
<< . 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 14 апреля 2013 13:07 · Личное сообщение · #1 Начну издалека. Ковыряю программу на флэшэ. Во время её работы вылезает окно "Демо режим". Кроме него ограничений нет. Стоимость программы смехотворна, но интересно, именно как отследить вызов окошка. Самые все популярные бряки на АПИ поставил, запустил керберос, но пока безрезультатно. Дизассемблером строки: Registered, Demo, License искал, тоже мимо. Можно как-то через стек отловить последний вызов в памяти, и как это сделать? http://www.softportal.com/getsoft-4723-display-book-2.html ----- Ламер - не профессия :)) ![]() |
|
Создано: 05 мая 2013 17:56 · Поправил: aspirin · Личное сообщение · #2 Увеличил время появления нага до 9999999, посмотрим, будет ли работать в таком варианте. У кого-нибудь ещё есть другие предложения по существу? ADD: видимо, .ехе проверяет свой код на изменения, стоило увеличить всего лишь таймер, текст на страницах стал повторяться в разных местах. Что скажите, товарищи? ![]() ----- Ламер - не профессия :)) ![]() |
|
Создано: 08 мая 2013 15:33 · Личное сообщение · #3 |
|
Создано: 08 мая 2013 18:20 · Личное сообщение · #4 |
|
Создано: 08 мая 2013 21:25 · Личное сообщение · #5 |
|
Создано: 08 мая 2013 23:13 · Личное сообщение · #6 |
|
Создано: 08 мая 2013 23:23 · Поправил: aspirin · Личное сообщение · #7 -=AkaBOSS=-, чтобы прояснить основную проблему патчей кода, прикрепляю скриншот. В моём варианте я увеличил время до показа окна регистрации, и вот результат. У вас сейчас не тот же самый случай получился? ![]() ADD: -=AkaBOSS=-, пересобрал ваш файл, всё тоже самое ![]() ----- Ламер - не профессия :)) ![]() |
|
Создано: 08 мая 2013 23:36 · Поправил: JohnyDoe · Личное сообщение · #8 aspirin Тоже марфу обнулил и вроде нормально все показывает. Автономную книгу только не создает потому как там за ее создание отвечает bs_dbook_3.15.exe, судя по всему. Надо его ковырять, если нужен полный функционал. А я и не знал что flash умеет сторонние exe запускать... Флешка запихивает данные для проверки в буфер обмена. bs_dbook_3.15.exe берет их оттуда и обрабатывает. Вернее забыл похоже ![]() ![]() |
|
Создано: 08 мая 2013 23:40 · Поправил: aspirin · Личное сообщение · #9 JohnyDoe, посмотрите скриншот, или декомпилер от Adobe плохо собирает .ехе, либо у меня одного так что ли?) Вы в чём собираете .ехе? Можете выложить свой, я потестирую? JohnyDoe, в Sothink SWF Decompiler запущенный проект и у меня нормально отображает, но не в нём же каждый раз запускать ![]() ----- Ламер - не профессия :)) ![]() |
|
Создано: 08 мая 2013 23:46 · Поправил: JohnyDoe · Личное сообщение · #10 Я flasm'ом декомпилировал, марфу обнулил и собрал флешку обратно. Открываю флешку в плеере и все пучком. Никаких глюков не вижу. Я закинул директорию fscommand в директорию где у меня лежит мой системный flash player. Флешка открывается в нем и у меня нет никаких проблем с отображением. P>S> раньше была возможность создать projector. Сейчас почему-то в плеере эта опция не доступна, причем во всех версиях. ![]() |
|
Создано: 08 мая 2013 23:57 · Личное сообщение · #11 |
|
Создано: 09 мая 2013 00:15 · Поправил: JohnyDoe · Личное сообщение · #12 |
|
Создано: 09 мая 2013 00:17 · Личное сообщение · #13 |
|
Создано: 09 мая 2013 00:45 · Поправил: -=AkaBOSS=- · Личное сообщение · #14 JohnyDoe пишет: Я вот попытался прицепить флешку в конец standalone плеера, но она сволочь не запускается а он так просто и не запустится. чтобы это сработало, добавляем флэшку в оверлей, а после флэшки пишем еще восемь байт: Code:
я у себя так сделал, и всё норм, никаких переносов абзаца etc вот, залил: ![]() /ADD на тему автономной книги написано: папка_программы/help/h1.5.htm в результате должен получиться не stand-alone модуль, а весь фарш программы, подготовленный для записи на CD! процесс обламывается, поскольку отсутствует файл StartBook.exe в хэлпе на скриншоте виден файл Start.exe нужно переименовать его в StartBook.exe, и всё будет работать ![]() ![]() |
|
Создано: 09 мая 2013 01:19 · Поправил: JohnyDoe · Личное сообщение · #15 -=AkaBOSS=- Я как-то раньше и не сталкивался с этим. Через создать projector делал и не обращал внимания на то как этот процесс происходит. Запишем, будем знать. Надо кстати расковырять bs_dbook_3.15.exe. Он запускается как-то так, когда нужно создать автономную книгу. Code:
Запустив с таким параметром прогу, можно отлаживать. Exe ничем не защищен. Цифры у вас скорее всего будут отличаться. Было бы полезно взглянуть на автономную книгу. Если она состоит из одного exe, то возможно есть вариант создать универсальную читалку. Если это конечно надо кому-то. Но я что-то сомневаюсь что так будет. Приложение скорее всего будет с костылями. Ничего интересного. ![]() |
|
Создано: 09 мая 2013 12:20 · Личное сообщение · #16 -=AkaBOSS=-, winrar пишет неизвестный метод, нет файлов для извлечения, можете ещё раз перезалить? -=AkaBOSS=- пишет: чтобы это сработало, добавляем флэшку в оверлей, если когда-нибудь обновится версия книжки, чтобы мне самому уметь пропатчить, что значит добавить флэшку в оверлей, как это делается? -=AkaBOSS=- пишет: а после флэшки пишем еще восемь байт: Code: signature dd 0xFA123456 size dd ? ; размер добавленной флэшки куда вставляется этот код? JohnyDoe пишет: Если она состоит из одного exe, то возможно есть вариант создать универсальную читалку. Если это конечно надо кому-то. задача интересная, если подскажите как реализовать, то только за. ----- Ламер - не профессия :)) ![]() |
|
Создано: 09 мая 2013 12:52 · Поправил: JohnyDoe · Личное сообщение · #17 Интересно в чем тогда защита, если обнуление одной переменной во флеше привело к тому что программа работает ![]() aspirin Я сейчас попробовал создать автономную книгу. Получаются теже самые костыли. Дофига файлов. Ничего интересного вобщем. Добавить в оверлей - это записать в конец файла. Берешь старый exe, отрезаешь от него старый флеш, вставляешь новый и в конец файла записываешь сигнатуру и размер файла. Посмотри как оно в старом exe сделано. P.S> декомпилирование во fla-исходник и его последующая правка и сборка это довольно напряжное занятие. Всякие софинки код недостаточно хорошо обратно декомпилируют. И со шрифтами проблемы обычно возникают. ![]() |
|
Создано: 09 мая 2013 13:32 · Поправил: aspirin · Личное сообщение · #18 JohnyDoe пишет: P.S> декомпилирование во fla-исходник и его последующая правка и сборка это довольно напряжное занятие. Всякие софинки код недостаточно хорошо обратно декомпилируют. И со шрифтами проблемы обычно возникают. Я не против обойтись без декомпиляции во fla, но как тогда на ходу поправить значение marfa? JohnyDoe пишет: Интересно в чем тогда защита, если обнуление одной переменной во флеше привело к тому что программа работает В том, что связываться с геморроем декомпиляции и дальнейшими вытекающими проблемами, могут захотеть только уроженцы самой уникальной в мире страны, при стоимости программы в 100 наших рублей. ![]() JohnyDoe пишет: Я сейчас попробовал создать автономную книгу. Получаются теже самые костыли. Что именно вы считаете костылями, как всегда коверканые абзацы, множество файлов в общем каталоге, и т.д.? ADD: В итоге всё идёт к тому, что программка скоро всем надоест, и будет мне предложено написать аналогичную свою ![]() ----- Ламер - не профессия :)) ![]() |
|
Создано: 09 мая 2013 14:23 · Личное сообщение · #19 aspirin Да, множество файлов не есть интересно. Если бы flash был с AS 3.0, то можно было бы попробовать через loadbytes содержание книжечки загружать, а саму книжечку пихнуть прямо во flash. Чтобы поправить значение marfa не требуется декомпилировать во fla. Достаточно использовать flasm. Получится правда что-то вроде ассемблерного кода, но там разбираться особо и не надо. В софинке смотрим код, во flasm'е исправляем то что надо. Я когда-то вообще hex-редактором правил. ![]() |
|
Создано: 09 мая 2013 14:36 · Личное сообщение · #20 JohnyDoe пишет: Достаточно использовать flasm. Получится правда что-то вроде ассемблерного кода, но там разбираться особо и не надо. В софинке смотрим код, во flasm'е исправляем то что надо. у меня уже есть пропатченный display_book.swf из постов выше, как его преобразовать в работоспособный .exe? ----- Ламер - не профессия :)) ![]() |
|
Создано: 09 мая 2013 14:43 · Поправил: -=AkaBOSS=- · Личное сообщение · #21 aspirin пишет: что значит добавить флэшку в оверлей, как это делается? попробовал объяснить см. аттач ![]() aspirin пишет: у меня уже есть пропатченный display_book.swf из постов выше, как его преобразовать в работоспособный .exe? я ведь в #14 посте выкладывал exe ![]() ![]() |
|
Создано: 09 мая 2013 14:58 · Поправил: aspirin · Личное сообщение · #22 -=AkaBOSS=- за туториал большое спасибо, всё доступно описано, предлагаю его добавить в раздел статей. Winrarом ничего не открывается, поставил 7-zip - другое дело, ваш архив из постов выше нормально открылся. Также display_book.ехе нормально запустился, пока буду тестировать, но надписи демо нет, и с форматированием абзацев, на первый взгляд, всё впорядке. Хоть в двух словах, насчёт оверлея теперь понятно, как патчили сам .ехе без декомпиляции во fla? (Если автор обновит программу, чтобы самому повторить). "я ведь в #14 посте выкладывал exe" - тогда ещё архив не открывался, не было 7zip установленного, теперь порядок ![]() ----- Ламер - не профессия :)) ![]() |
|
Создано: 09 мая 2013 15:19 · Поправил: -=AkaBOSS=- · Личное сообщение · #23 aspirin пишет: за туториал большое спасибо, всё доступно описано, предлагаю его добавить в раздел статей. спасибо за отзыв, но я никаких америк не открывал. всего лишь показал, чем еще можно гвозди забивать, если молотка нету ![]() aspirin пишет: как патчили сам .ехе без декомпиляции во fla от самого exe я отцеплял флэшку из оверлея, смотрел код через Sothink SWF Decompiler, а потом SWiXом подправил. А сам exe - это всего лишь Adobe Flash Player Projector, последняя версия есть Описанным мною методом можно прицепить к нему любую флэшку. Главное - чтобы версия флэшки была ниже версии проигрывателя. Версия флэшки определяется по четвёртому байту от начала файла: Code:
![]() |
|
Создано: 09 мая 2013 15:33 · Поправил: aspirin · Личное сообщение · #24 -=AkaBOSS=- пишет: от самого exe я отцеплял флэшку из оверлея, смотрел код через Sothink SWF Decompiler это понятно, "а потом SWiXом подправил", имеется ввиду Sothink SWF Editor? В Sothink SWF Editor я открыл swf, и вижу байты слева, и символы справа, не пойму, как там найти нашу переменную ![]() ----- Ламер - не профессия :)) ![]() |
|
Создано: 09 мая 2013 15:34 · Поправил: JohnyDoe · Личное сообщение · #25 -=AkaBOSS=- Использовать swix только для правки кода не лучшая затея. Бывает так что Swix портит флешку. Попробуй разобрать и собрать обратно без правки. Размер файла будет отличаться. Часто это не критично, но бывает так что пропадают некоторые визуальные эффекты, звук начинает хрипеть и т.д. Вобщем не один в один часто флешка собирается в итоге. Я не доверяю программам, которые изменяют, то что я не собирался править. Все что я не правил должно быть собрано один в один. aspirin swixkit.com ![]() |
|
Создано: 09 мая 2013 15:50 · Поправил: -=AkaBOSS=- · Личное сообщение · #26 JohnyDoe Насчёт SWiX я в курсе. Бывает даже так, что он по непонятным причинам отказывается сохранять конкретную флэшку, даже если я её не менял ![]() а изменение размера, я думаю, обуславливается тем, что файл не патчится, а полностью собирается из тегов заново. Вполне вероятно, что порядок сборки может отличаться от того, что был применён компилятором, и некоторые места могут собираться по-другому, что также может быть нехорошо, особенно в тех случаях, когда флэшку уже успели обработать какой-нибудь мутью протекторного типа. Но он достаточно удобен для меня, и в данном конкретном случае, кажется, отработал без ошибок. ЗЫ. правда, в нём очень не хватает сворачивания XML тегов в редакторе... JohnyDoe пишет: раньше была возможность создать projector. Сейчас почему-то в плеере эта опция не доступна, причем во всех версиях. на деле же, это не случайный баг, а преднамеренно заложенная особенность. для пункта меню "Создать проектор" вызывается безусловное отключение: EnableMenuItem (hMenu, 0x4E4F, MF_GRAYED) также, отсутствует код, обрабатывающий сообщение WM_COMMAND от этого пункта. ![]() |
|
Создано: 11 мая 2013 13:57 · Поправил: aspirin · Личное сообщение · #27 |
|
Создано: 11 мая 2013 14:36 · Поправил: -=AkaBOSS=- · Личное сообщение · #28 ну, чтобы такие книги создавались, нужно патчить bs_dbook_3.15.exe: Code:
jge -> jmp только теперь нужно еще поправить флэшку, ибо она не хочет открывать такие книги пропатчил здесь: Code:
и здесь: Code:
![]() <offtop> а вообще, прогу писал профессиональный изобретатель велосипедов. запускать внешние екзе с командной строкой, импортировать данные через буфер обмена... я уже не говорю об индусятничестве с папкой ProgramData. вот не судьба было один раз по-человечески написать... </offtop> ![]() |
|
Создано: 12 мая 2013 17:09 · Личное сообщение · #29 -=AkaBOSS=-, пока тестирую, вроде как одной неприятностью стало меньше. Правда, нашёл ещё один недочёт автора. Если добавлять книги в формате .txt, то весь текст заменяют вопросы, кроме цифер в самом тексте. Это уже неисправимо? Самое забавное, что автор заверил поддержку .txt. ----- Ламер - не профессия :)) ![]() |
|
Создано: 12 мая 2013 17:26 · Личное сообщение · #30 |
|
Создано: 12 мая 2013 20:47 · Личное сообщение · #31 |
<< . 1 . 2 . 3 . >> |
![]() |
eXeL@B —› Вопросы новичков —› Подскажите, в какую сторону копать... |