SORU
7 EKİM 2010, PERŞEMBE


Sağ yakın GUI WPF uygulama yolu: () GetCurrentProcess.() Öldürmek, Çevre.Exit(0) ya bu.()Kapatma

Benim GUI masaüstü tabanlı WPF 4.0 (C# .Net 4.0) program Sunucusu veritabanı SQL ile çalışır. Benim uygulama çalıştırdığımda her zaman ADO.NET Varlık Çerçevesi üzerinden SQL Server için bir bağlantı oluşturur ve SQL Server erişilemiyor bir özel durum atar ve bildirim ile MessageBox gösterir.

Şimdi kullanıcı bu mesajı okuduktan sonra uygulama kapanacak istiyorum. Üç yolu bunu buldum:

Process.GetCurrentProcess().Kill();

ya

this.Shutdown(); // Application.Current.Shutdown()

ya

System.Environment.Exit(0);

Hepsi iyi çalışma ve böyle bir uygulama kapatın ve Windows Görev Yöneticisi uygulama süreci öldürmek.

Bilmek istiyorum:

  1. Aralarındaki fark nedir?
  2. Hangi yolu uygulamam daha hızlı kapanacak?
  3. Hangi tarafa yakın uygulama için kullanmalıyım?
  4. Application.Current.Shutdown() this.Shutdown() aynı şekilde uygulamayı kapatmak için mi?

Ya da belki başka, daha uygun bir şekilde WPF GUI kapatmak için bir uygulama var mı?

Application.Exit() hatayı alıyorum benim için çalışmıyor:

Olay 'System.Windows.Application.Exit' tek-el Sol görünebilir = veya -= . yan

Teşekkürler.

CEVAP
7 EKİM 2010, PERŞEMBE


Uygulama.Mevcut.() Kapatma kapatma uygulaması için uygun bir yoldur. more işleyebilir çıkış olayları yangın nedeniyle genellikle

İşlemi.() GetCurrentProcess.() Uygulama öldürmek öldürmek istediğinizde kullanılmalıdır. more

Ad1. Bu yöntem doğası tamamen farklıdır. Kapatma işlemi bazı işlemler sonunda, öldürmek uygulamayı kapatmak zorlamak için durdurulmuş olabilir.

Ad2. En hızlı yol olacaktır muhtemelen Öldürmek, ama bu kernel panik gibi bir şey.

Ad3. Çünkü kapatma kapatma olayı

Ad4. this ne bağlıdır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jason Rosolowski

    Jason Rosolo

    25 EKİM 2006
  • Kyletiv7

    Kyletiv7

    28 Mayıs 2007
  • tsweeney79

    tsweeney79

    21 Ocak 2008