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

Получение списка процессов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дан массив http://www.cyberforum.ru/cpp-beginners/thread420050.html
дн массив из n вещественных чисел с клавыиатуры все элементы равные максимальному заменить на 0
C++ Поиск самого длинного слова в файле вот задание Задание к лабораторной работе № 7. Ввод данных осуществляется из файла с pасшиpением .DAT. Использовать ТОЛЬКО библиотечные функции ввода/вывода СИМВОЛА. Исходный текст и pезультат pаботы пpогpаммы выводятся на экpан. Нельзя использовать библиотечные функции работы со строками(словами)! Обработка текста должна вестись посимвольно! Задание 7. http://www.cyberforum.ru/cpp-beginners/thread420047.html
C++ Умножение матриц и нахождение суммы элементов
надо умножить матрицу A на матрицу B, где матрица A размером m на n, и найти в получившейся матрице сумму элементов строк и столбцов, на пересечении которых отрицательные элементы, помогите кто может, внизу наработки программы, единственное что надо это как определить эти элементы и сложить элементы срок и столбцов, пишу программу на xcode, так как другого компьютера нет #include <iostream>...
C++ Массивы2.
Сумму элементов массива, расположенных после последнего элемента, равного нулю Кто может напишите пожалуйста)
C++ ввести последовательность чисел http://www.cyberforum.ru/cpp-beginners/thread420035.html
ввести последовательность из n чисел с клавы, произведение этих чисел.
C++ Задача на строки в С: Дана строка символов, содержащая слова с корнями кас/кос(косн). Проверить правильность написания слов, и в случае неправильного написания – исправить. подробнее

Показать сообщение отдельно
rus_phantom
6 / 6 / 1
Регистрация: 31.03.2011
Сообщений: 69

Получение списка процессов - C++

28.12.2011, 21:58. Просмотров 2944. Ответов 1
Метки (Все метки)

Попытался скинуть в файл список всех процессов:

Вариант 1:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
PROCESSENTRY32 PE32;
    HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
 
    if(hSnapshot == INVALID_HANDLE_VALUE) {
        out <<"CreateToolhelp32Snapshot() failed" <<endl;
        return;
    }
    
    PE32.dwSize = sizeof(PROCESSENTRY32);
 
    if(!Process32First(hSnapshot, &PE32)) {
        CloseHandle(hSnapshot);
        out << "Process32First() failed" <<endl;
        return;
    }
 
    do {
        out <<"Name = "<< PE32.szExeFile <<endl;
    } while(Process32Next(hSnapshot, &PE32));
 
    
    CloseHandle(hSnapshot);
Вариант 2
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
26
27
28
29
    HANDLE hSnapShot = CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0);
    if (hSnapShot == INVALID_HANDLE_VALUE)
        return;
        
    PROCESSENTRY32 pe32 = { 0 };
    pe32.dwSize = sizeof (pe32);
 
    for (BOOL b = Process32First (hSnapShot, &pe32); b != FALSE; b = Process32Next (hSnapShot, &pe32))
    {
        // хотим убить test.exe...
        //
        out << pe32.szExeFile<< endl;
        if (lstrcmp (pe32.szExeFile, (LPCWSTR)"firefox.exe") == 0)
        {
            HANDLE hProcess = OpenProcess (
                PROCESS_TERMINATE,
                FALSE,
                pe32.th32ProcessID
            );
            
            if (hProcess != NULL)
            {
                TerminateProcess (hProcess, 0);
                CloseHandle (hProcess);
            }
        }
    } 
    
    CloseHandle (hSnapShot);
Но оба скидывают в файл текст типа:
0015F770
0015F770
.....
0015F770
0015F770
Подскажите где моя ошибка?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru