2012-07-02 9 views
6

मुझे कैसे पता चलेगा कि मेरा सी # कंसोल एप्लिकेशन कब रुक जाएगा? क्या कोई घटना है या ऐसा है?कंसोल एप्लिकेशन के लिए शट डाउन इवेंट सी #

धन्यवाद! आवेदन डोमेन

class Program 
    { 
     static void Main(string[] args) 
     { 
      AppDomain.CurrentDomain.ProcessExit += new EventHandler(CurrentDomain_ProcessExit);   


     } 

     static void CurrentDomain_ProcessExit(object sender, EventArgs e) 
     { 
      Console.WriteLine("exit"); 
     } 
    } 
+0

क्या आप ऐप से बाहर निकलने के लिए कोड चाहते हैं? –

+3

[इस सवाल तुम्हारा साथ समान है] [1] [1]: http://stackoverflow.com/questions/1119841/net-console-application-exit-event – greijner

उत्तर

23

उपयोग ProcessExit घटना आप मदद कर सकता है।

यह MSDN explains कैसे अन्य चीजें हैं जो आप इस घटना से निपटने जबकि, अंश की देखभाल की जरूरत के साथ-साथ इस घटना को संभालने के लिए:

इस घटना System.ConsoleCancelEventHandler और System.ConsoleCancelEventArgs साथ संयोजन के रूप में प्रयोग किया जाता है । CancelKeyPress ईवेंट एक कंसोल एप्लिकेशन को CTRL + C सिग्नल को अवरुद्ध करने में सक्षम बनाता है ताकि एप्लिकेशन यह तय कर सके कि निष्पादित या समाप्त करना जारी रखना है या नहीं।

इस घटना का उपयोग स्पष्ट रूप से नियंत्रित करने के लिए करें कि आपका एप्लिकेशन CTRL + C सिग्नल को कैसे प्रतिसाद देता है। यदि आपके एप्लिकेशन में सरल आवश्यकताएं हैं, तो आप इस घटना के बजाय TreatControlCAsInput प्रॉपर्टी का उपयोग कर सकते हैं।

इस घटना के लिए इवेंट हैंडलर थ्रेड पूल थ्रेड पर निष्पादित किया गया है।

+0

ऐसा लगता है कि CurrentDomain_ProcessExit में आपका कोड केवल वैसे भी समाप्त होने से पहले निष्पादित करने के लिए कुछ सेकंड दिए जाएंगे। –

5

घटना System.Console.CancelKeyPress हैंडलिंग की

संबंधित मुद्दे