본문 바로가기
Borland

컴퓨터에 실행되는 프로세스를 확인하는 방법

by leo21c 2009. 5. 1.
http://support.microsoft.com/kb/175030/ko

<소스 참고> http://hushou.tistory.com/341?_new_tistory=new_image

볼랜드 C++Builder에서 작성한 C++ 소스

#include <tlhelp32.h>

///현재 실행 중인 Textile의 개수를 확인 하는 함수 by david 090501
int __fastcall TMainForm::GetCountExecutingProgram()
{
int number=0; // Initialization 0
HANDLE snap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); // This function has system information
AnsiString name;
if(snap) // Excution snapshat handle
{
BOOL p_Count; // For count process
PROCESSENTRY32 p_Entry; // Declare process struct
p_Entry.dwSize = sizeof(PROCESSENTRY32); // A Function of PROCESSENTRY32
p_Count = Process32First(snap, &p_Entry); // Search a executing process
while(p_Count)
{
p_Count = Process32Next(snap, &p_Entry); // Repeat to search executing process
name = p_Entry.szExeFile;
name = name.LowerCase();
if (name == "program_name.exe") number++; // Increase number of executing process
}
CloseHandle(snap); // Close snapshot handle
}
return number;
}