appo icon

Kill process (Option 1)

appo | PRO | 12/27/13 08:19:58 PM UTC | 0 ⭐ | 605 👁️ | Never ⏰ | []
Delphi |

1.31 KB

|

None

|

0 👍

/

0 👎

program Project1;
{$APPTYPE CONSOLE}        //  remove {$ APPTYPE CONSOLE} to hide it 
 
{$R *.res}
uses
  Tlhelp32,
  Windows,
  SysUtils;
 
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;
begin
  try
    KillTask('skype.exe'); //process Name
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
 
// Coded by Appo //

Comments