Я ищу способ обнаружения # запущенных процессов с таким же именем процесса.
В качестве примера я три раза запускал блокнот.
notepad.exe notepad.exe notepad.exe
Итак, он вернет 3.
В настоящее время у меня есть этот код для обнаружения запущенного процесса, но не считая его количество выполняемого процесса.
#include <iostream> #include <windows.h> #include <tlhelp32.h> #include <tchar.h> bool IsProcessRunning(const char *ProcessName); int main() { char *notepadRunning = (IsProcessRunning("notepad.exe")) ? "Yes" : "No"; std::cout << "Is Notepad running? " << notepadRunning; return 0; } bool IsProcessRunning(const char *ProcessName) { PROCESSENTRY32 pe32 = { sizeof(PROCESSENTRY32) }; HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if(Process32First(hSnapshot, &pe32)) { do { if(_tcsicmp(pe32.szExeFile, ProcessName) == 0) { CloseHandle(hSnapshot); return true; } } while(Process32Next(hSnapshot, &pe32)); } CloseHandle(hSnapshot); return false; }
Любая помощь будет оценена:)
Спасибо.