Заголовочные файлы DDK и SDK :: как использовать вместе?

Тема в разделе "WASM.BEGINNERS", создана пользователем UTeX, 18 ноя 2007.

Статус темы:
Закрыта.
  1. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    Постоянно ошибки типа

    постоянные повторы блин.
    как быть подскажите?
     
  2. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    Тут ведь многие юзают DDK. Просто при повторе структур уже не warning а error выскакивает
     
  3. apple

    apple Виктор

    Публикаций:
    0
    Регистрация:
    26 апр 2005
    Сообщения:
    907
    Адрес:
    Russia
    http://wiki.rootkits.ru/index.php/DDK
    Это который DDK?
     
  4. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    apple
    Получаечся никак что ли? И для того чтобы совместить код юзающий native вызовы и обычные все нужно сасмому описывать?
    Не пойму никак.
     
  5. apple

    apple Виктор

    Публикаций:
    0
    Регистрация:
    26 апр 2005
    Сообщения:
    907
    Адрес:
    Russia
    А что такое "обычные". ВинАПИ там нет.
     
  6. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    apple
    Ну вот например я использую функции winapi для работы с кучей, со строками - тут нужно winnt.h инклудить
    и ExAllocatePool например - ntddk.h
    вот вобщем в этих хэадерах больше всего совпадений и находится
     
  7. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    Походу если пишешь приложение на WinAPI, то даже не надейся использовать ntddk.h? Или как-то иначе можно? Кроме ручного оформления частей ntddk.h
     
  8. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    Да. Именно так он и установился
     
  9. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    Всё можно без проблем. Нужно только поместить ДДК хидеры в пространство имен, например так:

    Код (Text):
    1. namespace NT {
    2.   extern "C" {
    3.     #include <ntdef.h> 
    4.     #include <ntddk.h>
    5.   }
    6. }
    В данном случае имя пространства имен "NT" (можно любое другое). Т.о. развязываются сущности определенные в глобальном пространстве (всё что определено в winAPI хидерах) и сущности засунутые в своё собственное пространство. Каждый раз когда надо обратиться к такой сущности необходимо явно указать имя пространства, в котором она содержится, например, NT::lol: RIVER_OBJECT.

    Тут можно слить пример.
     
  10. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    Ох черт ). Просто супер
    Four-F,СПАСИБО
    Тема закрыта.
     
  11. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    UTeX
    Столько слов.. Возьми Неббета "Native API reference", Введение - Использование базовых API.
    Поиск рулит.

    apple
    Это Windows 2003 Server SP1 DDK, вроде бы. В общем, последний ддк до переименования в WDK.

    Опоздал.
     
  12. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    IceStudent
    Та ступил (. Передо мной лежит она. Просто смотрел на функции а не а введение )
     
Статус темы:
Закрыта.