Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dniwewe
3 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 40
#1

C++ и количество запущенных процессов - C++

02.08.2013, 16:40. Просмотров 1079. Ответов 5
Метки нет (Все метки)

Перед мной стоит задача. Вычислить количество процессов, запущенных на системе. Перечисляю процессы я так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
    PROCESSENTRY32 Process;
    HANDLE hProcess;
    Process.dwSize = sizeof(PROCESSENTRY32);
    
    hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    
    Process32First(hProcess, &Process);
    
    while(Process32Next(hProcess, &Process))
    {
           Process32Next(hProcess, &Process);
           cout << Process.szExeFile << " | " << Process.th32ProcessID << endl;
    }
А вот как вычислить сколько их, не могу. Помогите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2013, 16:40     C++ и количество запущенных процессов
Посмотрите здесь:

Запись запущенных программ в лог файл. C++
C++ Взаимодействие процессов
Попытка получения запущенных процессов на удалённом компьютере C++
C++ дерево процессов
C++ Определить количество выигрышей, количество проигрышей и количество ничьих данной команды
Проверить список запущенных процессов на наличие нужного C++
C++ Список запущенных приложений Windows
C++ Запуск JVM из под плюсов, запущенных под Wine!
Вывести список запущенных процессов в порядке присвоенного им ID C++
C++ Почему несколько запущенных копий программы не влияют на скорость?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
stragger
38 / 38 / 2
Регистрация: 05.12.2011
Сообщений: 343
02.08.2013, 16:45     C++ и количество запущенных процессов #2
Эээ.. ну, так как-то
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
PROCESSENTRY32 Process;
    HANDLE hProcess;
    Process.dwSize = sizeof(PROCESSENTRY32);
    
    hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    
    Process32First(hProcess, &Process);
    
    int countProc = 0;
    while(Process32Next(hProcess, &Process))
    {
           Process32Next(hProcess, &Process);
           countProc++;
    }
countProc - сколько процессов получилось...

Не по теме:

или я что-то не понял...

dniwewe
3 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 40
02.08.2013, 17:06  [ТС]     C++ и количество запущенных процессов #3
Вот я недалекий Какой же я тупой Спасибо большое
stragger
38 / 38 / 2
Регистрация: 05.12.2011
Сообщений: 343
02.08.2013, 17:17     C++ и количество запущенных процессов #4
да ладно, бывает, никто сразу "тру-программером" не рождается...
Somebody
2781 / 1595 / 143
Регистрация: 03.12.2007
Сообщений: 4,179
Завершенные тесты: 1
02.08.2013, 17:33     C++ и количество запущенных процессов #5
1) Почему Process32Next два раза за итерацию?
2) Почему счётчик инициализируется нулём, если один процесс уже получен через Process32First?
3) Если уж совсем по-хорошему, то надо учитывать случай, если Process32First возвращает FALSE.
stragger
38 / 38 / 2
Регистрация: 05.12.2011
Сообщений: 343
02.08.2013, 17:41     C++ и количество запущенных процессов #6
Ну я не особо думая это делал, ну да, это будет неправильно работать, извиняюсь.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    PROCESSENTRY32 Process;
    HANDLE hProcess;
    Process.dwSize = sizeof(PROCESSENTRY32);
    
    hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    int countProc = 0;
    if(Process32First(hProcess, &Process))
    {
      do
      {
         countProc++;
      }
      while(Process32Next(hProcess, &Process));
    }
    std::cout << "Количество процессов = " << countProc;
Yandex
Объявления
02.08.2013, 17:41     C++ и количество запущенных процессов
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru