Zamykanie roznych procesów

0

jak mozna w delphi 6 zamknac aplikacje znajac <ort>naprzyklad </ort>jej nazwe w procesach, cos jak kill pod linuxem, da sie tak, ew jak to szybko mozna inaczej zrobic?

0

Kodzik znaleziony gdzieś dawno temu:
Do uses dodajemy "Tlhelp32"

function KillTask(ExeFileName: string): integer;
const 
  PROCESS_TERMINATE=$0001;  
var 
  ContinueLoop: BOOL; 
  FSnapshotHandle: THandle; 
  FProcessEntry32: TProcessEntry32;  
begin 
  result := 0;  

  FSnapshotHandle := CreateToolhelp32Snapshot 
                     (TH32CS_SNAPPROCESS, 0);  
  FProcessEntry32.dwSize := Sizeof(FProcessEntry32); 
  ContinueLoop := Process32First(FSnapshotHandle,  
                                 FProcessEntry32); 

  while integer(ContinueLoop) <> 0 do 
  begin 
    if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = 
         UpperCase(ExeFileName)) 
     or (UpperCase(FProcessEntry32.szExeFile) = 
         UpperCase(ExeFileName))) then 
      Result := Integer(TerminateProcess(OpenProcess( 
                        PROCESS_TERMINATE, BOOL(0), 
                        FProcessEntry32.th32ProcessID), 0));  
    ContinueLoop := Process32Next(FSnapshotHandle, 
                                  FProcessEntry32); 
  end;  

  CloseHandle(FSnapshotHandle);  
end;

Użycie:

Killtask('Program.exe');

1 użytkowników online, w tym zalogowanych: 0, gości: 1