Différencier les processus système des autres programmes

Résolu
skirby Messages postés 96 Date d'inscription vendredi 1 avril 2005 Statut Membre Dernière intervention 26 juillet 2007 - 12 oct. 2006 à 14:21
skirby Messages postés 96 Date d'inscription vendredi 1 avril 2005 Statut Membre Dernière intervention 26 juillet 2007 - 17 oct. 2006 à 11:49
Bonjour,

J'aimerais savoir si il existe une règle qui permette de différencier les processus systèmes (Windows) des autres programmes avec la méthode suivantes :

void getProcess(void) {
  DWORD dwaProcessIds[1024], dwNbrProcesses;
  HANDLE hProcess;

  int iSuccess = EnumProcesses(dwaProcessIds, sizeof(dwaProcessIds), &dwNbrProcesses);

  dwNbrProcesses /= sizeof(dwaProcessIds[0]);

  if (iSuccess) {
    for (unsigned i = 0; i < dwNbrProcesses; i++) {
      hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, dwaProcessIds[i]);

      // Comment savoir avec la valeur de hProcess si on est sur un processus système (Windows)

      CloseHandle (hProcess);
    }
  }
}

Est-il possible par exemple que si hProcess est inférieur à une valeur déterminée on puisse considérer que l'on est en présence d'un processus système ?

Merci d'avance et bonne journée.

2 réponses

deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
12 oct. 2006 à 17:45
tu récupère le nom de l'utilisateur et tu trie, pour les process système se sera SYSTEM http://www.cppfrance.com/codes/WIN32-CTRLALTDEL-GESTIONNAIRE-PROCESSUS_37923.aspx et regarde , il y a une fonction qui le fait.

++
deck_bsd

[http://deck-bsd.eurower.net]
3
skirby Messages postés 96 Date d'inscription vendredi 1 avril 2005 Statut Membre Dernière intervention 26 juillet 2007
17 oct. 2006 à 11:49
Salut deck_bsd,

Désolé pour ma réponse tardive.
Sinon, le code que tu m'as indiqué m'a permis de faire ce que je voulais.

Merci beaucoup.
0
Rejoignez-nous