Recuperation PID procecuss

Résolu
themaste Messages postés 130 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 8 juillet 2008 - 16 mai 2006 à 17:13
cs_magma Messages postés 198 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 18 mars 2011 - 17 mai 2006 à 11:20
Bonjour a tous!
Voila, je suis a la recherche d'un code simple simple pour pouvoir récupérer le PID d'un processus, à partir de son nom.
J'aimerais utilisé la fonction OpenProcess pour en récupérer un handle. Mais il faut un ID!!!

Tous les éléments que j'ai pu trouver pr le moment permettent de lister les différents processus. Cependant, je ne veux pas lister, mais obtenir directement cet ID.

Comment je peux faire donc pour récupérer l'ID du processus "MonProcessus.exe" ?

Merci par avance

2 réponses

cs_magma Messages postés 198 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 18 mars 2011
17 mai 2006 à 11:20
DWORD GetPidByName(char *szProcName)
{
  HANDLE hSnap;
  DWORD dwPID = 0; 
  PROCESSENTRY32 pe = {sizeof(PROCESSENTRY32)};



  if((hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0))!= INVALID_HANDLE_VALUE)
  {
    if(Process32First(hSnap, &pe))
    {
      do
      {
        if(strcmpi(pe.szExeFile, szProcName) == 0)
        {
          dwPID = pe.th32ProcessID;
          break;
        }   
      }
      while(Process32Next(hSnap, &pe));
    }
    CloseHandle(hSnap);
  }
  return dwPID;
}
3
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 mai 2006 à 01:04
Par force il faut lister et comparer les noms de processus.

ciao...
BruNews, MVP VC++
0
Rejoignez-nous