Сейчас на форуме: tyns777, zombi-vadim, zds (+5 невидимых) |
eXeL@B —› Программирование —› Получить handle контрола в HTML/FLASH. |
Посл.ответ | Сообщение |
|
Создано: 21 апреля 2015 20:20 · Личное сообщение · #1 Долго думал, как обозвать эту тему. Вообщем возникла необходимость управления HTML/FLASH common-контролами: edit/buttons, etc (контролы во FLASH имеют особую значимость). Мне представляется это возможным после получения их хендлов и посылки сообщений им напрямую (могу ошибаться). Подскажите, возможно ли получить их handle? Если да, то как? Или хотя бы пните, куда копать ? | Сообщение посчитали полезным: Excelvrn |
|
Создано: 21 апреля 2015 22:19 · Личное сообщение · #2 Виндовый Хэндл html-элемента не получить... там весь контейнер документа одно окно, и не имеет дочерних... как-то так... Но манипулировать html-элементами через COM-интерфейсы можно, для это лучше посмотреть в ----- IZ.RU | Сообщение посчитали полезным: Rainbow |
|
Создано: 21 апреля 2015 22:33 · Поправил: F_a_u_s_t · Личное сообщение · #3 |
|
Создано: 21 апреля 2015 23:02 · Поправил: Rainbow · Личное сообщение · #4 F_a_u_s_t пишет: Смотри в сторону игровых ботов, есть 100500 вариантов управлять флешем, от хаков с инжектами до скриптовых биндов. Так-то, может оно и так.. Только вот прежде чем докопаться до этих 100500 вариантов надо 100500 малвари безрезультатно отреверсить (ну видимо так уж повелось у ботоводов - малварь вкручивать, а то и вместо демки совать), после чего купить вместо демо-версии непонятно чего с непонятно чем фуловую (триальную, с подвязом к серверу), с навешенным VMProtom (тоже видимо традиция). Этот вариант мне приходил в голову, но если и будет рассмотрен, то в последнюю очередь. Альтернативы ? |
|
Создано: 21 апреля 2015 23:10 · Поправил: F_a_u_s_t · Личное сообщение · #5 Rainbow пишет: Так-то, может оно и так.. Только вот прежде чем докопаться до этих 100500 вариантов надо 100500 малвари безрезультатно Бинды аналогично на github.com или в качестве альтернативы selenium, для него есть флеш драйвер. | Сообщение посчитали полезным: Rainbow, DenCoder |
|
Создано: 21 апреля 2015 23:38 · Поправил: Rainbow · Личное сообщение · #6 F_a_u_s_t пишет: habrahabr stackoverflow Бинды аналогично на github.com или в качестве альтернативы selenium, для него есть флеш драйвер. flash-selenium к selenium есть другой драйвер. Ну хорошо, попробую покопать сторону манов по декомпилю флеша. Советы, личный опыт приветствуются, т.к., думаю, что значительно улучшат усваяемость. Вариант с Input'om - api mouse_event + keyboard_event - возможен. Однако, считаю такие подходы достойными ламеров-инвалидов, которые от незнания базовых принципов внутренней работы системы тупо поверхностно стремятся автоматизировать алгоритм юзер-действий. |
|
Создано: 22 апреля 2015 00:40 · Поправил: F_a_u_s_t · Личное сообщение · #7 Rainbow пишет:Однако, считаю такие подходы достойными ламеров-инвалидов, которые от незнания базовых принципов внутренней работы системы тупо поверхностно стремятся автоматизировать алгоритм юзер-действий. О кликерах речи нет, варианты только с легитимным api, например с тем же Пример: Code:
Особо других вариантов нет, в flash engine идет байткод, можно конечно вклинится в работу, только потом придется самому парсить байткод, обрабатывать сообщения... возможно, но оно того не стоит, одно дело ioncube, там иначе никак, а здесь уже готовый интерфейс от разработчиков. Ну или вариант по проще, Из всех известных мне вариантов самый удобный это selenium, позволяется обрабатывать сложные события, множество примеров и готовых скриптов, множество роликов, самопал с инжектами годен только для малвари. Вспомнил, на хабре была статья |
|
Создано: 26 апреля 2015 11:45 · Личное сообщение · #8 F_a_u_s_t пишет: варианты только с легитимным api, например с тем же ExternalInterface Я так понял ExternalInterface - это единственный тру вариант. Как выяснилось, ExternalInterface запитан во флеше с 9й версии через ActiveX. Кодинг этого ActiveX вроде как ориентирован под ASP/JS/PHP. Однако мну такой расклад не совсем устраивает. ActiveX и на сях и на любом другом языке легко кодится. Собсно порылся исчо. Накопал сишные хидеры (возможно неполные) этих интерфейсов. Но доков по интерфейсам че-то не нашел. Есть у кого маны/доки по ActiveX интерфейсам флешевским ? Хидер с интересующими интерфейсами цепляю в аттач. f3c2_26.04.2015_EXELAB.rU.tgz - axflash.rar |
|
Создано: 26 апреля 2015 12:31 · Личное сообщение · #9 Возможно будет полезно | Сообщение посчитали полезным: Rainbow |
|
Создано: 26 апреля 2015 12:57 · Личное сообщение · #10 |
|
Создано: 26 апреля 2015 19:34 · Личное сообщение · #11 Rainbow пишет: ActiveX и на сях и на любом другом языке легко кодится Не легко, слишком много ненужных телодвижений. Помимо flash'a нужно учитывать подгружаемые js, html, в итоге придется еще биндить браузерный движок или же самому велосипедить. Для плюсов есть врапперы, в гугле c++ flash player wrapper или c++ flash player binding. |
|
Создано: 26 апреля 2015 19:38 · Личное сообщение · #12 F_a_u_s_t пишет: Не легко, слишком много ненужных телодвижений. Помимо flash'a нужно учитывать подгружаемые js, html, в итоге придется еще биндить браузерный движок или же самому велосипедить. Для плюсов есть врапперы, в гугле c++ flash player wrapper или c++ flash player binding. А чего сложного дернуть пару методов ком интерфеса-то ? CoCreateInstance никто не отменял. Просто доки нужны по интерфейсам и все. Не вижу никакой сложности. Добавлено спустя 9 минут Речи о плюсах не идет совсем ))) я это легко на асме навострячу. |
|
Создано: 26 апреля 2015 21:08 · Личное сообщение · #13 Rainbow пишет: Добавлено спустя 9 минут Речи о плюсах не идет совсем ))) я это легко на асме навострячу. я о томже.. както пару лет назад засматривался на эту тему вплане делфи.. бота хотелось.. но забил.. СоИнтерфейс причем к браузеру? то что нет описателей под язык.. да.. это некоторый гимор.. но дальше в чем проблема? ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... |
|
Создано: 26 апреля 2015 21:31 · Поправил: F_a_u_s_t · Личное сообщение · #14 Rainbow пишет: А чего сложного дернуть пару методов ком интерфеса-то ? Запусти на более менее вменяемой игры flash bug, flash это не только flash, еще json, xml, html, в самом flash'e далеко не полтора метода. Хз, может подойдет под задачу Из пушки по воробьям - использовать бинд WebKit'a под любым вменяемым языком, asm к таковым не относится. |
|
Создано: 26 апреля 2015 23:36 · Поправил: Rainbow · Личное сообщение · #15 F_a_u_s_t пишет: flash это не только flash, еще json, xml, html Я тебя умоляю.. Это всего лишь способы представления данных для их хранения/передачи/обработки. Используются, как я понял, они в дочерних классах, на которых базируются сами контролы (если рассматривать исключительно флеш). Ведь когда ты пишешь софт, чтобы хранить свои внутренние софтовые конфиги у тебя есть несколько путей реализации этого: ты можешь их писать в инишники(один формат), можешь писать в реестре(второй), можешь в произвольном бинаре/текстовике(третий) и т.д. Но при этом тебя никто не заставляет писать парсер под эти форматы. Есть тупо апишки, которые тебе даны в помощь, например, от мелкомягких коллег, но при этом у тебя есть выбор что юзать. Я думаю так и во флеше. Возможно, и есть некие модуля-парсеры в виде отдельных интерфейсов, ну есть - да ради бога, упростили задачу. Но это уже дальше придется вкуривать. Пока что надо понять как добраться до доков по основным интерфейсам. F_a_u_s_t пишет: Хз, может подойдет под задачу --> Link <--, а так юзают дебаг версию. What is F-IN-BOX? F-IN-BOX is a window control to enhance Macromedia / Adobe Flash Player ActiveX features. It does not use its own engine to display movies but provide a wrapper around official swflash.ocx/flash.ocx code instead. Thus it is possible to avoid certain Macromedia / Adobe Flash Player ActiveX limitations. Как я понял: F-IN-BOX - это оконный контрол, расширяющий возможности Macromedia / Adobe Flash Player ActiveX. Он не использует его движок для воспроизведения роликов. Вместо оффициального кода swflash.ocx/flash.ocx, предоставляет свой оберточный(обработочный, иными словами - парсер swf, /* мои коменты */) код. Таким способом он позволяет обходить ограничения, накладываемые Macromedia / Adobe Flash Player ActiveX. Ну не знаю... Например, что лучше использовать, для записи в реестр: функции из Advapi32.dll или из коммерческой библиотеки фирмы MYCOMP Corp. ? ))) Ну я бы выбрал первое, т.к. я думаю очевидно, что разработчик стандарта лучше знает свой код и свои косяки, чем MYCOMP Corp. F_a_u_s_t пишет: под любым вменяемым языком, asm к таковым не относится Еще как относится ))) Вот как раз VM-языки(байт-кодовые) - это опухоль на сознании кодера. Особенно, если при этом используется техника run-time compile в нативный код, такая же как в .NET ))) |
|
Создано: 27 апреля 2015 03:45 · Личное сообщение · #16 |
|
Создано: 02 мая 2015 17:51 · Личное сообщение · #17 |
|
Создано: 03 мая 2015 15:56 · Поправил: Rainbow · Личное сообщение · #18 Isaev пишет: Rainbow, ExternalInterface, как я понял, можно использовать только, если flash тоже твой, т.к. в нём его нужно инициализировать? с чужой флешкой не прокатит? Как я понял, должно прокатывать с любой вроде, интерфейс имеет методы аттача к флешке впринципе любого процесса. Дебаг может осуществляться таким методом. Отсутствие доков - засада . P.S. Могу ошибаться канеш, поправляйте. |
|
Создано: 03 мая 2015 16:15 · Личное сообщение · #19 |
|
Создано: 21 мая 2015 15:16 · Личное сообщение · #20 |
|
Создано: 21 мая 2015 15:34 · Личное сообщение · #21 вбей в гугл скачай www.cmlab.csie.ntu.edu.tw/~cathyp/eBooks/ATL/ATL.Internals.Working.with.ATL.8.2nd.Edition.Jul.2006.chm хотя тебе же наверное на русском и с картинками ? | Сообщение посчитали полезным: Rainbow |
|
Создано: 21 мая 2015 16:08 · Личное сообщение · #22 Rainbow Сорцы из книги тоже найти можно. pdf/djvu - видимо в природе не существует - так как всего 2000 экземпляров книги было выпущено (инфа с ютуба). ----- Don_t hate the cracker - hate the code. |
|
Создано: 21 мая 2015 18:19 · Личное сообщение · #23 |
eXeL@B —› Программирование —› Получить handle контрола в HTML/FLASH. |