Thema: Delphi Prozedur weiterleiten

Einzelnen Beitrag anzeigen

Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#14

AW: Prozedur weiterleiten

  Alt 22. Dez 2010, 23:15
Ich habe auf die Schnelle auch keinen Weg gefunden an das "Application"-Handle von z.B. Notepad zu kommen.
Ein Weg wäre auch:
Delphi-Quellcode:
Procedure TerminateProcessByClassname(ClassName:String);
//TW 2010
var
  hWindow, processHandle: hWnd;
  hprocessID: Integer;
begin
  hWindow := FindWindow(PWChar(ClassName), nil);
  if hWindow > 0 then
  begin
    GetWindowThreadProcessID(hWindow, @hprocessID);
    if hprocessID <> 0 then
    begin
      processHandle := OpenProcess
        (PROCESS_TERMINATE or PROCESS_QUERY_INFORMATION, False, hprocessID);
      if processHandle <> 0 then
      begin
        TerminateProcess(processHandle, 0);
        CloseHandle(processHandle);
      end;
    end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
    TerminateProcessByClassname('Notepad');
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat