Çalışan programları kapatma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Çalışan programları kapatma
Ben çalışan programları ListBox1 aktardım çalışan programı kapatma fonksiyonumda var KillTask('notepad.exe') böyle yapınca kapatıyor fakat ben list boxda seçtiğim programın kapatılmasını istiyorum nasıl yapabilirim
Kod: Tümünü seç
begin
h:=handle;
s:=listbox1.items.strings[listbox1.itemindex];
h := FindWindow(NIL,pchar(s) );
SendMessage(h, WM_SYSCOMMAND, SC_close, 0);
end;
ListBox içine en az bir satır seçili değilse hata verir... Aşağıdaki şekilde bunu kontrol altına alabilirsin...
Kod: Tümünü seç
begin
If ListBox1.ItemIndex > (-1) then
begin
s := listbox1.items[listbox1.itemindex];
h := FindWindow(NIL, pchar(s) );
SendMessage(h, WM_SYSCOMMAND, SC_close, 0);
end;
end;
hayır burda
s := listbox1.items[listbox1.itemindex];
h := FindWindow(NIL, pchar(s) );
bunları tanımlamak gerekmiyormu s:= vede h:= bunları tanımlamak lazım ama nasıl?? burda hata veriyor tanımlanmadığı için?? sanınırım
bunun gibi bişey olması lazım ama olmuyor 
s := listbox1.items[listbox1.itemindex];
h := FindWindow(NIL, pchar(s) );
bunları tanımlamak gerekmiyormu s:= vede h:= bunları tanımlamak lazım ama nasıl?? burda hata veriyor tanımlanmadığı için?? sanınırım
Kod: Tümünü seç
procedure TForm1.Button4Click(Sender: TObject);
var
s:String;
h:String;
begin
If ListBox1.ItemIndex > (-1) then
begin
s := listbox1.items[listbox1.itemindex];
h := FindWindow(NIL, pchar(s) );
SendMessage(h, WM_SYSCOMMAND, SC_close, 0);
end;
