![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| -Сергей- |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 2.8.2003 Где: Россия Репутация: 1 Всего: 1 |
Внедряю код в процесс с целью перехватить текст, передаваемый в ExtTextOut.
Перехватываю обе функции ExtTextOutA и ExtTextOutW. Для тестирования написал прогу, которая использует обе функции. Функции перехватываются хорошо. Для передачи отловленного текста использую WM_COPYDATA ExtTextOutW перехватывается, но дело в том, что когда я сам вызываю ее в коде, текст получаю нужный, а вот контроллы которые рисуют текст, например TButton, с надписью "Кнопка" от нее я получаю непонятную кодировку "DzȕȖȗȒȈ" или текст "Button" приходит как "%XWWRQ" C ExtTextOutA совсем все плачевно - там я получаю мусор вместе с Access violation. Вызываю я ее правильно, но перехватывается она как ExtTextOutW (в приемнике Msg.CopyDataStruct.dwData = 2) непонимаю почему. Помогите разобраться в чем дело. Работаю в OC W7 Delphi XE5 Перехват и передача:
Принимающая сторона:
Это сообщение отредактировал(а) -Сергей- - 10.4.2014, 11:00 --------------------
Для утвердительного ответа достаточно лишь одного слова - "да". Все прочие слова придуманы, чтобы сказать "нет". |
||||
|
|||||
| CynicRus |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 31.5.2012 Репутация: 1 Всего: 5 |
Хм, можно попробовать проверить Options на:
ну и если оно соответствует, то декодировать это. Пример разбора на C++
Это сообщение отредактировал(а) CynicRus - 10.4.2014, 14:51 |
||||
|
|||||
| -Сергей- |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 2.8.2003 Где: Россия Репутация: 1 Всего: 1 |
Спасибо за пример!
Я не сильный знаток С, кое-что понимаю, кое-что не совсем. Как на паскале будет это:
Так что ли?
И здесь непонятно
allIndices это же не массив, а WORD Это сообщение отредактировал(а) -Сергей- - 14.4.2014, 06:35 --------------------
Для утвердительного ответа достаточно лишь одного слова - "да". Все прочие слова придуманы, чтобы сказать "нет". |
||||||
|
|||||||
| CynicRus |
|
||||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 31.5.2012 Репутация: 1 Всего: 5 |
allIndices - указатель на Word массив же. В случае с циклом - да, похоже на то. |
||||||||
|
|||||||||
| -Сергей- |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 2.8.2003 Где: Россия Репутация: 1 Всего: 1 |
Перевел на Delphi, может кому пригодится.
Это сообщение отредактировал(а) -Сергей- - 22.4.2014, 08:17 --------------------
Для утвердительного ответа достаточно лишь одного слова - "да". Все прочие слова придуманы, чтобы сказать "нет". |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |