Avatar billede roz Nybegynder
17. april 2005 - 00:24 Der er 2 kommentarer og
1 løsning

Lukke program via dets filnavn

Hvordan kan jeg lukke et andet program via det FILNAVN? Normalt ville jeg bruge denne:

  Handle := FindWindow(nil,'vindue title');
  SendMessage(Handle,WM_Close,0,0);

Men jeg vil gerne kunne lukke ved at skrive navnet på programmets exe fil. hvordan gør jeg det?
Avatar billede stone Forsker
17. april 2005 - 01:08 #1
du indtaster filnavnet i din edit1 og programmet lukker
uses
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;




procedure TForm1.Button1Click(Sender: TObject);
begin
KillTask(edit1.Text);
Avatar billede roz Nybegynder
17. april 2005 - 02:40 #2
Super :) mange tak :) Smid svar så får du point
Avatar billede stone Forsker
17. april 2005 - 10:53 #3
svar..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester