Çalışan programları kapatma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Misafir

Çalışan programları kapatma

Mesaj gönderen Misafir »

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
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Forumda arama yapınız... Bir sürü örnek birikti...

- Üyelerimizden @incsoft'un yazdığı mesajlara bakınız.. Aynen istediğiniz tarzda programlar yapıyor ve foruma yönelttiği soruları da bu yönde...

- Konu hakkında bilgisi olan üyeler de vakit ayırıp detaylı olarak cevap yazıyorlar zaten...
Resim
Resim ....Resim
Misafir

Mesaj gönderen Misafir »

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;
bu kod hata veriyor ??
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

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;
Resim
Resim ....Resim
Misafir

Mesaj gönderen Misafir »

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

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;
bunun gibi bişey olması lazım ama olmuyor :)
mystic
Üye
Mesajlar: 8
Kayıt: 14 May 2004 10:51

Mesaj gönderen mystic »

Cevabi yakalamissin ama tam olarak degil

s:String;
h:integer;

olmasi gerekli...
Our Brain is Our Weapon!
Cevapla