Zamykanie innej aplikacji...PILNE

0

Wiem że to banał, ale pytam bo niewiem. Jak wyłączyć aplikacjie znając jej nazwe np. CloneCD.exe, wiem jak zrobić by wyłączyć aplikacjie znając jej nazwe belki, al mi chodzi o sam plik exe, a i nie chodzi mi o całą scieżke do pliku! , po prostu sama nazwa pliku wykonywalnego. Np. gdy naciśnie się Ctrl + Alt + Del, jest lista wszystkich aplikacji uruchomionych, i np chce wpisac nazwe jakiegoś pliku np. CloneCD.exe i nacisnąć np. przyciszk i CloneCD ma się wyłączyć... Bardzo prosze o pomoc!!!.........

PzDr's...

0
function  KillProc(const ClassName:AnsiString):Boolean;
var
  hWnd,hProc:THandle;
  pid:DWORD;

begin
  Result:=False;
  hWnd := FindWindow(PCHAR(ClassName),nil);
  if IsWindow(hWnd) then begin
    GetWindowThreadProcessId(hWnd, @pid);
    hproc := OpenProcess(PROCESS_TERMINATE, FALSE, pid);
    if hproc<>0 then begin
      Result:=TerminateProcess(hProc,0);
      if Result then CloseHandle(hProc);
    end;
  end;
end;
Aby jej użyć należy podać nazwę klasy okna aplikacji np.:KillProc('NOTEPAD');
0

thx, ale to tez mam, i nie oto mi chodzi tylko o nazwe pliku wykonywalnego mówiłem np. CloneCD.exe, taka nazwa jak jest w Menadzeru Zadań (Ctrl + Alt + Del),

Pzdr's

0

źródła programu wtop

0

jak bys poswiecil na to 10 minut, to sam bys to napisal (z pomoca faq)..
i nie pisz, ze jestes poczatkujacy bo ja tez bylem jak to pisalem :P :

uses TLHelp32;

procedure KillApp(AppName:String);
var
  Uchwyt:tHandle;
  Proces:tProcessEntry32;
  Uchwyt2:THandle;
begin
  Uchwyt:=CreateToolHelp32SnapShot(TH32CS_SNAPALL,0);
  Proces.dwSize:=SizeOf(Proces);
  if Integer(Process32First(Uchwyt,Proces))<>0 then
  repeat
   If lowercase(Proces.szExeFile)=lowercase(AppName) then
      begin
        Uchwyt2:=OpenProcess(PROCESS_TERMINATE,bool(0),Proces.th32ProcessID);
        TerminateProcess(Uchwyt2,0);
        CloseHandle(Uchwyt2);
      end;
  until Integer(Process32Next(Uchwyt,Proces))=0;
  closehandle(Uchwyt);
end;

milego programowania [browar]

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