Сейчас на форуме: rmn, Magister Yoda, vasilevradislav, tyns777, zombi-vadim (+4 невидимых) |
![]() |
eXeL@B —› Программирование —› Код функции в Ring 0 |
Посл.ответ | Сообщение |
|
Создано: 02 мая 2008 23:36 · Личное сообщение · #1 Доброго времени суток ! Система Windows Pro SP2 версия 5.1.2600 Инструмент: SoftIce 4.05 Можно трейсить через шлюз (sysenter). Но "образы" возникают не сразу, а могут и наоборот. Т.е., если надо найти, к примеру, место в коде, где происходит отрисовка окна (ShowWindow - изнутри под Ring 0), то не всё так просто получается. По sysenter проходишь через шлюз - попадаешь в _KiSystemService, затем двигаешь в сторону call ebx. Её по F10 проходишь, окно не рисуется, хотя должно. Таким образом, задача в следующем: узнать адрес начала отрисовки окна и, что более важно как можно побороть неясность с SoftIce. Быть может когда находишься в Ring 0 действия не всегда происходят "в реальном времени" ? Естественно пути ведут к драйверу win32k.sys. Вход для ShowWindow BF82FECFh. ![]() |
|
Создано: 03 мая 2008 00:11 · Личное сообщение · #2 |
|
Создано: 03 мая 2008 07:30 · Личное сообщение · #3 если вы про работу системы win32k то лучше книгу почитать Yuan F.Windows graphics programming.Win32 GDI and DirectDraw.2000.chm в двух словах всё рисуеться в видео драйвере а данные беруться из процессов win32k сами функции типа всяких LineTo ничего сразу не рисуют они рисуют по буфферу в win32k процессах на каждое окно PS: это в двух словах если не в двух то какие то моменты могу расширить как пример можете посмотреть код ReactOS и DDK насчет видео системы ![]() |
|
Создано: 03 мая 2008 16:31 · Личное сообщение · #4 Задача на первый взгляд проста (как может показаться ! ![]() Добавить кода к месту в коде отрисовки окна, чтобы получить прозрачность контуров окна - что-то похожее на Vista. Без всяких блиндов и т.п. Такая связка, будучи правильно сделана исключит всевозможные глюки и тормоза системы. Да и вообще - интересно покопаться, подумать на эту тему. ![]() |
|
Создано: 10 мая 2008 22:41 · Личное сообщение · #5 |
|
Создано: 11 мая 2008 18:07 · Личное сообщение · #6 |
![]() |
eXeL@B —› Программирование —› Код функции в Ring 0 |