Program açıkken bilgisayar kapanmıyor

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
KarizMan
Üye
Mesajlar: 60
Kayıt: 31 May 2005 09:13

Program açıkken bilgisayar kapanmıyor

Mesaj gönderen KarizMan »

Merhabalar;
Benim projede kullanıcı kapatmak isteyip çarpıya basınca, msn'deki gibi taskbara yolluyorum programı ve gizliyorum.

Kod: Tümünü seç

frmAna.Hide;
Action:=caNone;
bu şekilde yapıyorum. Fakat program açıkken bilgisayar kapatılmak istenirse kapanmıyor. Bunu nasıl düzeltirim.
İyi çalışmalar
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7604
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Windows kapanırken tüm pencerelere bir mesaj gönderir. İsmini şu an hatırlamıyorum ama forumda bahsi geçmişti. Aratırsan bulabilirsin.

Bu mesajı yakalayıp programını kapatman lazım.

Kolay gelsin.
KarizMan
Üye
Mesajlar: 60
Kayıt: 31 May 2005 09:13

Mesaj gönderen KarizMan »

Teşekkürler hocam, dediğinizi bi araştırayım.
İyi çalışmalar
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

Ben şöyle bi procedur eklemişim zamanında

Kod: Tümünü seç

procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
begin
    if (Msg.CmdType = sc_minimize) or (Msg.CmdType = sc_close) then
         //minimize etmek için komutlar
    else begin

        if Msg.CmdType = SC_MAXIMIZE then

        else DefaultHandler(Msg);
    end;
end;
çarpıya basınca kapatmıyor programı, sadece kodla close diyince kapatıyor.
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

Ana Formun OnClose eventine şöyle bir kod yazarak dener misiniz?

Kod: Tümünü seç

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if Visible then
  begin
    Hide;
    Action := caNone;
  end;
end;
İyi çalışmalar
KarizMan
Üye
Mesajlar: 60
Kayıt: 31 May 2005 09:13

Mesaj gönderen KarizMan »

Arkadaşlar,
Hala bir çözüm bulamadım şu işe. Wm_endsession mesajını yakalayıp pprogramı kapatıyorum. fakat bilgisayar kapanmıyor yinede. Program kapandıktan 2 , 3 saniye sonra bilgisayarın kapanma işlemi sonlanıyor ve açık kalıyor bilgisayar.
Buna bir çözüm bulan var mı acaba?
iyi çalışmalar
Kullanıcı avatarı
ofenX
Üye
Mesajlar: 397
Kayıt: 09 Nis 2005 10:24
Konum: Diyarbakır
İletişim:

Mesaj gönderen ofenX »

Merhaba,
aşağıdaki linke bir göz atın.
viewtopic.php?t=802

kolay gelsin.
http://www.aysbergbilgisayar.com
Logo Go özel eğitim, web tasarım, teknik servis
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7604
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Eğer formunuzun OnCloseQuery kısmında kod varsa o WM_QUERYENDSESSION mesajını yakalayıp kapatırken, kapanmayı engelliyormuş, varsa kodu kaldırın.

Kolay gelsin.
KarizMan
Üye
Mesajlar: 60
Kayıt: 31 May 2005 09:13

Mesaj gönderen KarizMan »

Hocam formun onclose olayında üstte yazdığım 2 satırlık kod var. msndeki gibi çarpıya basınca gizleniyor. Bilgisayarın kapandığını anlamak için WMQueryEndSession mesajını ve WMEndSession mesajını yakalayıp programı kapatıyorum fakat windows kapanmıyor. Bunu nasıl çözerim?
İyi çalışmalar
heskin35
Üye
Mesajlar: 132
Kayıt: 30 Haz 2004 09:48

Mesaj gönderen heskin35 »

Aynı programı başka bi sistemde denediniz mi ? Sistem ile ilgili bi kararsızlık olabilir mi diye aklıma geldi hocam.
Cevapla