Вверх ↑
Этот топик читают: Гость
Ответов: 241
Рейтинг: 45
#16: 2007-02-24 15:08:17 ЛС | профиль | цитата
Galkov, один вопросик насчет примера на c-soft.
Что получить пытаемся? SB_GETTEXT вроде возвратит caption строки состояния окна My Window или нет?
Ага, все разобрался.
nesco, выделить чужому процессу кусок памяти можно еще и для того чтоб инжектировать в эту память свой код, а затем его выполнить.
Вот это мне более интересно, попробую реализовать
карма: 0

0
Ответов: 9906
Рейтинг: 351
#17: 2007-02-24 15:16:46 ЛС | профиль | цитата
Wolfik, я точно все не знаю, но сильно подозреваю, что все виндячие сообщения (не только SB_GETTEXT), которые просят поинтер для обмена информацией через него, понимают этот поинтер именно в контексте окна адресата.

Если это чужое окно, и мы этого не понимаем - получается "Ай не работает"
А если начинаем понимать - то нужен такой метод
Про это и пример, кстати...

Про чужой код - согласен. Кстати и наоборот можно: перехват сообщений через SubClassing...
Вот, кстати, еще одна фишка, если добавить канал обмена со своим процессом
карма: 9

0
Разработчик
Ответов: 26066
Рейтинг: 2120
#18: 2007-02-24 15:22:27 ЛС | профиль | цитата
Wolfik, вот теперь концепция понятна. Мне казалось, что патчи используют просто внутренние обходы, заменяя команды переходов и значения определенных константы и переменных. Но перенаправлять проессы на свой код... да, весьма интересно.
карма: 22

0
Ответов: 241
Рейтинг: 45
#19: 2007-02-24 20:24:55 ЛС | профиль | цитата
Galkov, в папке win mess пример правильно реализован?
Сейчас еще немного домучаю инжекцию кода, точнее его запуск в процессе, и выложу еще обновление.
Galkov писал(а):
Кстати и наоборот можно: перехват сообщений через SubClassing...

Это, я так понимаю даст возможность установки подобия хуков, но в сам процесс? Или как? Поподробнее бы...
карма: 0

0
файлы: 1MemPatch_12.rar [17.1KB] [478]
Ответов: 9906
Рейтинг: 351
#20: 2007-02-24 21:34:29 ЛС | профиль | цитата
Wolfik писал(а):
Galkov, в папке win mess пример правильно реализован?

Да. ((и верхний Memory для wParam - это номер панели в статус-баре))
Если не считать, что у тебя "не штатный" Stream2Hex
Но это больше мое упущение - последний его вариант соответствует даже моим капризам

Wolfik писал(а):
Это, я так понимаю даст возможность установки подобия хуков, но в сам процесс? Или как? Поподробнее бы...

Про "наоборот" - это я не внимательно прочитал...
А все просто: SubClassing-ом объекта называют просто подмену оконной ф-ии. Это считается (в MSDN по крайней мере) корректным для объекта, и не корректным для класса.
Через GetWindowLong(???, GWL_WNDPROC) читают адрес "родной" оконной ф-ии, и (или вообще вместо) с помощью SetWindowLong(???, GWL_WNDPROC) устанавливают свою.
В которой "родную" используют по default-у
Ну а дальше понятный интерфейс - имеем событие (скажем) onMessage, нижние точки wParam и lParam (имеющие осмысленное содержание во время этого события), и левую точку doResult
Если во время этого события вызывался doResult - это и возвращает оконная ф-я, не передавая управление "родной".
Если нет - возвращает результат работы именно "родной" ф-ии.
Все понятно, в общем, если отлажен канал связи между приложениями.

Кто бы еще такой элемент (ReceiveMessage) сделал для "своих" окон
А то элементу SendMessage "пары" не хватает...
карма: 9

0
Ответов: 563
Рейтинг: 54
#21: 2008-02-01 13:49:31 ЛС | профиль | цитата
а у вас работает компонент? если да то прошу выложить пример схемы.
карма: 0

0
Ответов: 9906
Рейтинг: 351
#22: 2008-02-01 14:09:25 ЛС | профиль | цитата
bublik писал(а):
то прошу выложить пример схемы

Какой смысл, если по уже выложенным - "нет вопросов".
"Нет вопросов" означает обычно, что чел не хочет разбираться в нарисованном.
------------ Дoбавленo:

bublik писал(а):
а у вас работает компонент?

Показываю пальцем
Galkov писал(а):
Wolfik писал(а):
Galkov, в папке win mess пример правильно реализован?

Да. ((и верхний Memory для wParam - это номер панели в статус-баре))

карма: 9

0
Ответов: 563
Рейтинг: 54
#23: 2008-02-01 19:02:16 ЛС | профиль | цитата
непонял ничего! компонент пашет или нет?
карма: 0

0
Гость
Ответов: 17029
Рейтинг: 0
#24: 2008-02-07 19:49:23 правка | ЛС | профиль | цитата


Редактировалось 5 раз(а), последний 2021-06-22 14:17:39
карма: 0

0
24
Сообщение
...
Прикрепленные файлы
(файлы не залиты)