Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2013, 17:12   #1
Student_2009
Пользователь
 
Регистрация: 04.03.2013
Сообщений: 16
По умолчанию Проблема с ZwQuerySystemInformation

При использовании ZwQuerySystemInformation выбрасывается "идентификатор не определен". В ntdll.h этой функции нет, а при ее там попытке прописать ругается на SYSTEM_INFORMATION_CLASS.
Кто-нибудь знает, в чем дело?
Student_2009 вне форума Ответить с цитированием
Старый 04.03.2013, 17:24   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
waleri вне форума Ответить с цитированием
Старый 04.03.2013, 19:51   #3
Student_2009
Пользователь
 
Регистрация: 04.03.2013
Сообщений: 16
По умолчанию

Я уже смотрел там. Я же говорю, в хедере "ntdll.h" ее нет. Пытаюсь прописать - не понимает, что такое "SYSTEM_INFORMATION_CLASS".
Может у кого-нибудь есть другой хедер?
Student_2009 вне форума Ответить с цитированием
Старый 04.03.2013, 21:41   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Посмотрите winternl.h
waleri вне форума Ответить с цитированием
Старый 04.03.2013, 23:17   #5
Student_2009
Пользователь
 
Регистрация: 04.03.2013
Сообщений: 16
По умолчанию

Спасибо, с этим стало более-менее понятно. Но теперь выдается ошибка "ссылка на неразрешенный внешний символ". Я так понял, что сама функция из "ntdll.dll" не подключается. Осталось выяснить почему и как это исправить.
Student_2009 вне форума Ответить с цитированием
Старый 04.03.2013, 23:24   #6
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

если у тебя OS < Windows 8, тогда подключай динамически (смотри здесь, раздел remarks)

если OS >= Windows 8, смотри здесь, в самом начале дескрипшена
Rififi вне форума Ответить с цитированием
Старый 04.03.2013, 23:38   #7
Student_2009
Пользователь
 
Регистрация: 04.03.2013
Сообщений: 16
По умолчанию

Спасибо, попробую.
На всякий случай уточню: рационально ли с помощью этой функции получать список всех хендлов системы?
Student_2009 вне форума Ответить с цитированием
Старый 05.03.2013, 12:52   #8
Student_2009
Пользователь
 
Регистрация: 04.03.2013
Сообщений: 16
По умолчанию

Сделал динамическое подключение.
Объявляю так
typedef UINT (__stdcall *ZwQuerySystemInformation)(SYSTEM_I NFORMATION_CLASS, PVOID, ULONG, PULONG);

Выдает кучу ошибок
25 IntelliSense: идентификатор "SYSTEM_INFORMATION_CLASS" не определен d:\handleslist\handleslist\handlesl ist\main.cpp 16 52 HandlesList
Ошибка 22 error C2513: UINT *: нет переменных, объявленных перед "=" d:\handleslist\handleslist\handlesl ist\main.cpp 16 1 HandlesList
Ошибка 19 error C2275: ULONG: недопустимое использование этого типа в качестве выражения d:\handleslist\handleslist\handlesl ist\main.cpp 16 1 HandlesList
Ошибка 18 error C2275: PVOID: недопустимое использование этого типа в качестве выражения d:\handleslist\handleslist\handlesl ist\main.cpp 16 1 HandlesList
Ошибка 20 error C2275: PULONG: недопустимое использование этого типа в качестве выражения d:\handleslist\handleslist\handlesl ist\main.cpp 16 1 HandlesList
Ошибка 21 error C2165: модификатор левой стороны: невозможно изменить указатели на данные d:\handleslist\handleslist\handlesl ist\main.cpp 16 1 HandlesList
Ошибка 17 error C2065: SYSTEM_INFORMATION_CLASS: необъявленный идентификатор d:\handleslist\handleslist\handlesl ist\main.cpp 16 1 HandlesList
Ошибка 23 error C2064: результатом вычисления фрагмента не является функция, принимающая 4 аргументов d:\handleslist\handleslist\handlesl ist\main.cpp 50 1 HandlesList
Ошибка 24 error C2064: результатом вычисления фрагмента не является функция, принимающая 4 аргументов d:\handleslist\handleslist\handlesl ist\main.cpp 52 1 HandlesList
Student_2009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Неблокирующий сокет Си проблема с закрытием, проблема с закрытием сокетов в цикле mnx_vol C/C++ Сетевое программирование 0 06.11.2012 13:57
Проблема с рамами/Проблема с ЖД DRAGGER Компьютерное железо 6 04.01.2009 23:37