Les Snippets

Connexion

Obtenir le Handle et le PID d'un Process par son nom

Niveau requis pour utiliser/comprendre cette source : 2 ( Initié )
Créé le 07/03/2011 16:35:00 et initié par Caribensila [Liste]
Date de mise à jour : 10/03/2011 19:11:26
Vue : 2758
Catégorie(s) : Système
Langages dispo pour ce code :
- Delphi 5



Langage : Delphi 5
Date ajout : 07/03/2011
Posté par Caribensila [Liste]
DateMAJ : 10/03/2011
  
// uses Tlhelp32; 
 
function GetProcessIDandHDL(const ProcessName: stringvar ProcessID, 
  ProcessHandle: Cardinal): boolean; 
var 
  ProcessEntry32: TProcessEntry32; 
  ShotHdl: THandle; 
begin 
  Result := False; 
  ProcessEntry32.dwSize := SizeOf(ProcessEntry32); 
  ShotHdl := CreateToolHelp32SnapShot(TH32CS_SNAPPROCESS, 0); 
  try 
    if ShotHdl = -1 then 
      Exit; 
    if Process32First(ShotHdl, ProcessEntry32) then 
    begin 
      while Process32Next(ShotHdl, ProcessEntry32) do 
      begin 
        if AnsiSameText(ProcessEntry32.szExeFile, ProcessName) then 
        begin 
          ProcessID := ProcessEntry32.th32ProcessID; 
          ProcessHandle := OpenProcess(PROCESS_ALL_ACCESS, false, ProcessID); 
          if ProcessHandle <> 0 then 
            Result := true; 
          Break; 
        end; 
      end; 
    end; 
  finally CloseHandle(ShotHdl); 
  end; 
end; 
 
//Exemple d'utilisation: 
 
var 
  ProcessHDL: THandle; 
  ProcessID: Cardinal; 
begin 
  if GetProcessIDandHDL('UnProcessus', ProcessID, ProcessHDL) then 
  begin 
    try 
      //... Utilisation de ProcessHDL et/ou de ProcessID ... 
    finally CloseHandle(ProcessHDL); 
    end; 
  end;  

Snippets en rapport avec : Processus, Handle, Process, Pid, Tlhelp32



Codes sources en rapport avec : Processus, Handle, Process, Pid, Tlhelp32

{Visual Basic, VB6, VB.NET, VB 2005} RÉCUPÉRER PID PROCESSUS, NOM DE FICHIER.EXE ET HANDLE FENÊTRE À PARTIR DE PID OU NOM DE FICHIER.EXE OU DE HANDLE FENÊTRE
6 fonctions pour processus. GetProcessPidByExeName, GetProcessPidByHwnd, GetProcessHwndByPid, GetPro...

{Visual Basic, VB6, VB.NET, VB 2005} YET ANOTHER PROCESS MONITOR
Bonjour à tous, YAPM (Yet Another Process Monitor) est un programme permettant d'entièrement gé...

{Visual Basic, VB6, VB.NET, VB 2005} YET ANOTHER (REMOTE) PROCESS MONITOR
Bonjour à tous, YAPM (Yet Another (remote) Process Monitor) est un programme de monitoring avancé...

{Visual Basic, VB6, VB.NET, VB 2005} COMMENT DÉTECTER LES PROCESSUS CACHÉS (VIRUS, ROOTKITS...) + ÉNUMÉRATION AVANCÉE DES PROCESSUS
Bonjour, voilà une source montrant comment avoir la liste des processus cachés qui tournent sur l...

{Visual Basic, VB6, VB.NET, VB 2005} WIN++ OPTIONS AVANCÉES SUR LES FENETRES ET PROCESSUS WINDOWS (CPU LIMITER, CTRL ALT END, METTRE EN PAUSE UN PROCESSUS...)
Bonjour à tous, Voici un programme dont le but est le suivant : Rassembler toutes les petites so...

{C / C++ / C++.NET} UNIX : LISTER LE NOMBRE DE PROCESSUS TOURNANT SUR LA MACHINE
Salut à tous, Petite fonction simple mais utile et commentée qui retourne le nombre de processus ...

{Visual Basic, VB6, VB.NET, VB 2005} CPU LIMITER - LIMITEZ L'UTILISATION DU PROCESSEUR DE CHAQUE PROCESSUS
-------------------------------- MAJ : Une version plus complète de ce programme existe : http://w...

{Visual Basic, VB6, VB.NET, VB 2005} CONTROL_PROCESS PROCESS_VIEWER
c'est un ensemble de code source que g assembler et compiler il permet de voir grace à des fichiers...

{C / C++ / C++.NET} PROCESS DUMPER
Bonjour/Bonsoir, le titre de l'article parle de lui-même... Ce code montre comment faire un dump d'...

{Visual Basic, VB6, VB.NET, VB 2005} CLM'S EMERGENCY : REFROIDISSEUR DE CPU
J'ai créé cette appli car j'en avais marre que mon pc s'éteigne subitement quand mon processeur chau...