2012-05-14 14 views
10

क्या एप्लिकेशन स्टॉप पर क्लिक किए जाने पर विंडोज फॉर्म क्लोज़ ईवेंट को कैप्चर करना संभव है। मुझे पता है कि एप्लिकेशन काम करना बंद कर रहा है लेकिन क्या कोई तरीका उपलब्ध है जो एप्लिकेशन बंद होने पर किसी भी मामले में आग लग जाएगा? मैं गूगल से इन तरीकों पाया, लेकिन वे काम नहीं कर रहे:एप्लिकेशन निकास ईवेंट कैप्चर करना - WinForms

AppDomain.CurrentDomain.ProcessExit += new EventHandler(CurrentDomain_ProcessExit); 

या

Application.ApplicationExit += new EventHandler(this.OnApplicationExit); 

यह करीब घटना प्राप्त करने के लिए संभव है जब आवेदन स्टॉप बटन पर क्लिक करें?

+0

क्या आपका मतलब ब्राउज़र बंद करना है? आपको जावास्क्रिप्ट ऑनउलोड विधि() या onbeforeunload() विधि की जांच करने की आवश्यकता है। – Anuraj

+0

एएसपीनेट विंडोज़ फॉर्मों का क्या मतलब है? WinForms पर चल रहे ASP.Net? – Anuraj

+0

चलो देखते हैं कि मेरे पास यह सीधे है या नहीं। ए) आपका प्रोग्राम क्रैश हो रहा है, या जवाब नहीं दे रहा है, इसलिए आपको इसे टास्क मैनेजर या कुछ के साथ बंद करना होगा, और आप अभी भी बंद होने से पहले एक ईवेंट को आग लगाना चाहते हैं। क्या ये सही है। या बी।) क्या आप सामान्य रूप से प्रोग्राम समाप्त होने पर बस एक घटना को आग लगाना चाहते हैं? क्या, एक एप्लिकेशन स्टॉप बटन वास्तव में है? –

उत्तर

16

Program.cs फ़ाइल में, आप उन तरीकों Application.Run से पहले होना चाहिए:

[STAThread] 
    static void Main() 
    { 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.ApplicationExit += new EventHandler(Application_ApplicationExit); 
     AppDomain.CurrentDomain.ProcessExit += new EventHandler(CurrentDomain_ProcessExit); 
     Application.Run(new MainForm()); 
    } 

तुम भी MainForm (प्रपत्र Application.Run विधि में प्रयुक्त) पर निपटाई गई घटना का उपयोग कर सकते हैं।

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