Сейчас на форуме: tyns777 (+5 невидимых)

 eXeL@B —› Программирование —› Типы данных структур объектов ядра
Посл.ответ Сообщение

Ранг: 8.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 06 апреля 2010 09:32
· Личное сообщение · #1

Здравтвуйте, уважаемые коллеги !
Меня вот что интересует:
Допустим, я открыл ветку реестра
функцией nt_create_key (nt_open_key),
получил её хендл.
Теперь хочу через obReferenseObjectByHandle
получить указатель на структуру, которая
для системы - ветка реестра =)
Что это за структура,
и что мне указывать в параметре pObjectType ?
То есть как называется такой тип объекта?
DDK почему то не дает на это ответа ;=(
Заранее благодарен за ответ.



Ранг: 590.6 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 06 апреля 2010 10:33
· Личное сообщение · #2

0. Смотри в хелпе ZwCreateKey
1. Не уверен, что ее вообще нужно референсить
2. Если уж сильно хочется - попробуй NULL
3. Структуру недокументированных типов можно попробовать вытянуть через WinDbg, смотри dt

-----
старый пень




Ранг: 145.8 (ветеран), 191thx
Активность: 0.140.36
Статус: Участник

Создано: 06 апреля 2010 12:22 · Поправил: Alchemistry
· Личное сообщение · #3

>>1. Не уверен, что ее вообще нужно референсить
Нужно. Иначе как ты из хэндла простым способом получишь указатель на объект?

хпсп3
Code:
  1. typedef struct _OBJECT_TYPE {
  2.     ERESOURCE               Lock;
  3.     LIST_ENTRY              ObjectListHead; /* OBJECT_CREATOR_INFO */
  4.     UNICODE_STRING          ObjectTypeName;
  5.     union {
  6.         PVOID               DefaultObject; /* ObpDefaultObject */
  7.         ULONG               Code; /* File: 5C, WaitablePort: A0 */
  8.     };
  9.     ULONG                   ObjectTypeIndex; /* OB_TYPE_INDEX_* */
  10.     ULONG                   ObjectCount;
  11.     ULONG                   HandleCount;
  12.     ULONG                   PeakObjectCount;
  13.     ULONG                   PeakHandleCount;
  14.     OBJECT_TYPE_INITIALIZER TypeInfo;
  15.     ULONG                   ObjectTypeTag; /* OB_TYPE_TAG_* */
  16. } OBJECT_TYPE, *POBJECT_TYPE;



 eXeL@B —› Программирование —› Типы данных структур объектов ядра
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати