Giriş
Process'leri dolaşabilmeyi sağlar.
1. CreateToolhelp32Snapshot() ile handle açılır
2. Process32First() ile okuma yapılır
3. Process32Next() ile döngü içinde okuma yapılır
Örnek
Şöyle yaparız.
Şöyle yaparız
Process'leri dolaşabilmeyi sağlar.
1. CreateToolhelp32Snapshot() ile handle açılır
2. Process32First() ile okuma yapılır
3. Process32Next() ile döngü içinde okuma yapılır
Örnek
Şöyle yaparız.
DWORD get_process_id_by_process_name(const char* process_name_){
PROCESSENTRY32 process_entry = { sizeof(PROCESSENTRY32) };
HANDLE processes_snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
// loop through all process to find one that matches the process_name_
if (Process32First(processes_snapshot, &process_entry)){
do{
if (strcmp(process_entry.szExeFile, process_name_) == 0){
CloseHandle(processes_snapshot);
return process_entry.th32ProcessID;
}
} while (Process32Next(processes_snapshot, &process_entry));
}
CloseHandle(processes_snapshot);
return NULL;
}
Örnek
Şöyle yaparız
HANDLE hSnapshot;
PROCESSENTRY32 hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
proc32.dwSize = sizeof(PROCESSENTRY32);
if(Process32First(hSnapshot, &proc32))
{
cout << proc32.szExeFile << endl;
while(Process32Next(hSnapshot, &proc32))
cout << proc32.szExeFile << endl;
}
Hiç yorum yok:
Yorum Gönder