объекты

Тема в разделе "WASM.BEGINNERS", создана пользователем Novi4ek, 25 июл 2008.

  1. Novi4ek

    Novi4ek New Member

    Публикаций:
    0
    что собой на самом деле представляют объекты gdi? т.е. кто-нибудь знает, где хранятся структуры, которые представляют эти объекты, как к этим структурам обратиться, кто с ними работает и т.д.? тот же вопрос про объекты окошек
     
  2. CrystalIC

    CrystalIC New Member

    Публикаций:
    0
    У Твистера спроси, он знает. Я тока добавлю.
    Код (Text):
    1. Хэндл выглядит так:
    2. [i0%i15] - Смещение обьекта в таблице обьектов деленное на 16.
    3. [i16%i23] - Тип обьекта.
    4.  
    5. Адрес таблицы возвращает gdi32.GdiQueryTable() или может быть определён из PEB:
    6. GetGdiHandleTable macro
    7.     assume fs:nothing
    8.     mov eax,dword ptr fs:[TEB.Peb]
    9.     mov eax,PEB.GdiSharedHandleTable[eax]
    10. endm
    11. ;
    12.     mov edx,ObjectHandle
    13.     GetGdiHandleTable
    14.     and edx,0FFFFh
    15.     shl edx,4
    16.     add eax,edx
    17.     mov eax,dword ptr [eax] ;<- адрес в ядре.
     
  3. Twister

    Twister New Member

    Публикаций:
    0
    Novi4ek

    Что конкретно тебя интересует?