Форум программистов, компьютерный форум, киберфорум
Наши страницы

Получить список модулей указанного процесса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Промежуток между написанием строчек http://www.cyberforum.ru/cpp-beginners/thread641912.html
Я работаю через программу dev c++ и недавно я столкнулся с проблемой при написании следующего: cout<<rus(" Тут текст1")<<endl; cout<<rus(" Тут текст2")<<endl; Я хочу сделать так что бы после...
C++ Выдает ошибку LNK2001 Ругается на 3 переменный типа static int - каждая находится в одном из классов. И используется для подсчета количества созданных копий. Исходник могу выложить, но он слегка запутан, да и комментарии... http://www.cyberforum.ru/cpp-beginners/thread641906.html
почему не работает? C++
решил по практиковаться с выделением динамической памяти: почему не работает код: #include <iostream> using namespace std; int main() { int size; cin >> size;
C++ Печать листьев бинарного дерева
Всем привет! Решаю такую задачу: На входе - последовательность целых чисел, оканчивающаяся 0, который является символом завершения ввода. Надо построить бинарное дерево и вывести на печать все...
C++ Условие задачи http://www.cyberforum.ru/cpp-beginners/thread641889.html
Здравствуйте уважаемые программисты. Вот задали задачу, а условия понять не могу. Задача: Даны натуральные числа n,m. Получить сумму m последних цифр числа n. Что именно нужно найти? Помогите...
C++ Вывод нулей Здравствуйте!Есть число, типа unsigned short, нужно вывести его с незначащими нулями, используя std::hex. Помогите пожалуйста! Добавлено через 13 минут upd нашел вывод std::cout << std::hex <<... подробнее

Показать сообщение отдельно
Konctantin
927 / 731 / 64
Регистрация: 12.04.2009
Сообщений: 1,700

Получить список модулей указанного процесса - C++

24.08.2012, 11:00. Просмотров 2690. Ответов 3
Метки (Все метки)

Доброго времени суток.
Возникла проблема с получением списка модулей процесса.
Пытаюсь получить так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
BOOL ListProcessModules(DWORD dwPID)
{
  HANDLE hModuleSnap = INVALID_HANDLE_VALUE;
  MODULEENTRY32 me32;
 
  hModuleSnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwPID);
  if(hModuleSnap == INVALID_HANDLE_VALUE)
    return FALSE;
 
  me32.dwSize = sizeof(MODULEENTRY32);
  if(!Module32First(hModuleSnap, &me32))
  {
    CloseHandle(hModuleSnap);
    return FALSE;
  }
 
  do
  {
    printf("MODULE NAME:     %s\n",   me32.szModule);
 
  }while(Module32Next(hModuleSnap, &me32));
 
  CloseHandle(hModuleSnap);
  return TRUE;
}
в итоге при вызове
C++
1
hModuleSnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwPID);
получаю результат INVALID_HANDLE_VALUE(0хFFFFFFFF) и ошибку 299.

Когда выполняю операцию для текущего процесса, все работает хорошо.

ОС Windows 7 x64, но не работает и в 32 разрядной.
В качестве параметра передавал
C++
1
CreateToolhelp32Snapshot(TH32CS_SNAPMODULE ...
и
C++
1
CreateToolhelp32Snapshot(TH32CS_SNAPMODULE32 ...
У кого есть какие соображения?

ЗЫЫ. на текущий процесс устанавливал привилегии отладки, не помогло.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.