информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Портрет посетителяSpanning Tree Protocol: недокументированное применениеАтака на Internet
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Крупный сбой Azure и других сервисов... 
 Серьезный сбой AWS положил множество... 
 Фишинговая атака на Python-разработчиков 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Ага. Но для начала можно на кроликах потренироваться.. 05.03.04 09:42  Число просмотров: 1378
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
В смысле сделать свою прогу которая создает окно с кучей чайлдов и поставить хук на самого себя. Это будет проще потому что не надо будет извращатся с передачей данных от одного процесса к другому.
Кстати есть еще идея реализовать перехват всех APIшных GDI функций, и передавать на другую сторону просто их коды и параметры (этакий RPC устроить). Тока наверно это еще сложнее выйдет и еще не известно на какие грабли можно напороться.
<programming>
[Pascal] Господа программеры, многие точно должны это знать... 05.03.04 08:51  
Автор: Darkhelmet Статус: Незарегистрированный пользователь
<"чистая" ссылка>

Если естьвозможность киньте сырец с реализацией отслеживания какой регион перерисовывается у активного окна... Думаю с использованием
GetUpdateRgn... или с GetUpdateRect.. Очень нужно, все мои подуги реализовать сие, не совсем получаются. Не возвращает регион окошка который перерисовывается и все тут!

P.S. Сильно не пинайте за простой вопрос.. Но очень нужно сие реализовать!
Это самое.. 05.03.04 09:29  
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
GetUpdateRect должен вызываться непосредственн перед обработкой WM_PAINT после того как система послала жту мессагу окну. В противном случае (если будешь просто от балды вызывать GetUpdateRect для какого нить окна) скорее всего будешь получать нулевой регион. Потому что сразу после обработки этой мессаги у окна нету UpdateRegion'а.
Получается нужно перехватывать сообщение.. Блин, как не... 05.03.04 09:34  
Автор: Darkhelmet Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Получается нужно перехватывать сообщение.. Блин, как не охота Hook писать.. =(
Ага. Но для начала можно на кроликах потренироваться.. 05.03.04 09:42  
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
В смысле сделать свою прогу которая создает окно с кучей чайлдов и поставить хук на самого себя. Это будет проще потому что не надо будет извращатся с передачей данных от одного процесса к другому.
Кстати есть еще идея реализовать перехват всех APIшных GDI функций, и передавать на другую сторону просто их коды и параметры (этакий RPC устроить). Тока наверно это еще сложнее выйдет и еще не известно на какие грабли можно напороться.
А попроще ничего нету? =) 05.03.04 11:11  
Автор: Darkhelmet Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Блин и почему все так криво сделано? Неужели поудобней не сделать доступ к этим объектам... Microsoft чем думает я не знаю?

Слушай а вызывать GetUpdateRGN, нужно быть в его потоке?
Ну не знаю. Имхо тут ниче особо сложного и извратного нету -... 05.03.04 15:36  
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
> Блин и почему все так криво сделано? Неужели поудобней не
> сделать доступ к этим объектам... Microsoft чем думает я не
> знаю?
Ну не знаю. Имхо тут ниче особо сложного и извратного нету - это уже как говорится дело техники
> Слушай а вызывать GetUpdateRGN, нужно быть в его потоке?
Наверно в его процессе. Хотя может и нет - HWND оно ведь глобальное, пофиг в каком процессе. Если нет то проще - тебе достаточно только передавать из процедуры хука HWND своему основному процессу, затем ждать пока он отработает и продолжать обработку мессаги дальше. Это можно тем же SendMessage сделать.
Мелкософт просто выжимает бабло, это давно понятно ;-( 05.03.04 11:53  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
> Блин и почему все так криво сделано? Неужели поудобней не
> сделать доступ к этим объектам... Microsoft чем думает я не
> знаю?
Subj. В доброе старое время оконная графика была достаточно тормозной штукой, поэтому боролись за каждый такт... Туннелирование снижает производительность... Хотя зачатки уже были в WinNT4, когда при создании WindowStation зарезервировали параметр, который как бы должен был указывать на драйвер, в который должна была отрисовываться вся графика... Отсюда до туннелирования пол-шага. Однако они выпустили NT4 Terminal Server Edition, в котором уже было всё круто, но незадокументировано, Privat, короче — бабло на бочку и администрируй сколько хочешь удалённо ;-)

А в функции CreateWindowStation параметр dwReserved остался до сих пор Reserved, даже в XP.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach