Импорт ZwQueryObject

Тема в разделе "WASM.NT.KERNEL", создана пользователем dr_ivers, 28 сен 2007.

  1. dr_ivers

    dr_ivers New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2007
    Сообщения:
    17
    Господа, как правильно импортировать эту функцию в мой драйвер(Сишный)?
    Простого...
    Код (Text):
    1. NTSYSAPI
    2. NTSTATUS
    3. NTAPI
    4. ZwQueryObject(
    5.   IN HANDLE               ObjectHandle OPTIONAL,
    6.   IN OBJECT_INFORMATION_CLASS ObjectInformationClass,
    7.   OUT PVOID               ObjectInformation,
    8.   IN ULONG                Length,
    9.   OUT PULONG              ResultLength );
    ...я так понимаю мало, т.к. компилятор тут же выдает 9 ошибок.
    Подскажите....
     
  2. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    а ntdll.lib ты линкеру указываешь?
     
  3. dr_ivers

    dr_ivers New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2007
    Сообщения:
    17
    В самом начале проги указано:
    Код (Text):
    1. #pragma comment(lib, "ntdll.lib")
    Но ошибки выскакивают еще на этапе компиляции.
    Вот они:
    Код (Text):
    1. Compiling - driver.c for i386
    2. driver.c(37) : error C2146: syntax error : missing ')' before identifier 'Object
    3. InformationClass'
    4. driver.c(37) : error C2144: syntax error : '<Unknown>' should be preceded by '<U
    5. nknown>'
    6. driver.c(37) : error C2144: syntax error : '<Unknown>' should be preceded by '<U
    7. nknown>'
    8. driver.c(37) : error C2143: syntax error : missing ')' before 'identifier'
    9. driver.c(37) : error C2081: 'OBJECT_INFORMATION_CLASS' : name in formal paramete
    10. r list illegal
    11. driver.c(37) : error C2061: syntax error : identifier 'ObjectInformationClass'
    12. driver.c(37) : error C2059: syntax error : ';'
    13. driver.c(37) : error C2059: syntax error : ','
    14. driver.c(40) : error C2059: syntax error : ')'
    Компилирую используя команду build с загрузкой необходимых переменных окружения
     
  4. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    хм... тут вроде бы телепатов нет. показывай код.
     
  5. dr_ivers

    dr_ivers New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2007
    Сообщения:
    17
    Хех, я видать просто перегрелся.
    Все решилось простым описанием структуры _OBJECT_INFORMATION_CLASS.
    Данке, за помощь
     
  6. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    хех, не за что!
     
  7. asmfan

    asmfan New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2006
    Сообщения:
    1.004
    Адрес:
    Abaddon
    Скорее не ntdll.dll юзермодный нужно импортировать, а ntoskrnl.exe кернелмодный.
     
  8. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    asmfan
    мне вот тоже интересно наюя драйверу ntdll. Скажем спасибо есил там будет KiIntSystemCall адрес в стабе - тогда оно еще будет работать наверное. А с sysenter'ом точно не будет
     
  9. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    мда... заглючило меня. не заметил, что нужно для дров.

    2 тс:
    а не проще было бы подключить winddk.h?