2012-09-14 10 views
5

मुझे यह जानने में दिलचस्पी है कि कार्य शेड्यूलर एक चल रहे कार्य को कैसे समाप्त करता है। मैंने कार्य शेड्यूलर नौकरियों में एक ऐप जोड़ा है, और यह मेरे काम के लिए टास्क शेड्यूलर में कार्य दबाने (जैसे कार्य शेड्यूलर से शुरू करने के बाद) को दबाता है, तो कार्य विंडोज़ द्वारा मारे जाते हैं (WM_QUIT या WM_CLOSE संदेश नहीं मिला मेरा ऐप)। मुझे यह भी कॉन्फ़िगर करने का कोई तरीका नहीं मिला कि मैं टास्क शेड्यूलर में अपना कार्य कैसे बंद करना चाहता हूं। मेरा लक्ष्य कार्य शेड्यूलर (यदि कोई हो) द्वारा भेजे गए संदेश का इलाज करना है और मेरे ऐप को अच्छी तरह से बंद करें।कार्य शेड्यूलर एक चल रहे नौकरी को कैसे समाप्त करता है?

उत्तर

2

शायद विंडोज फ़ंक्शन TerminateProcess() के साथ प्रक्रिया को मार दिया गया है। संदेश कतार के साथ इसके साथ कुछ लेना देना नहीं है। इसे कॉन्फ़िगर करने का कोई तरीका नहीं है और TerminateProcess को जाल करने का कोई तरीका नहीं है।

यदि आपको लंबे समय तक चलने की आवश्यकता है, तो कार्य शेड्यूलर का उपयोग करने के बजाय वास्तविक विंडोज सेवा बनाने पर विचार करें। फिर आपको शट डाउन के लिए अधिसूचनाओं सहित सेवा नियंत्रण अधिसूचनाएं मिलेंगी, जो आपको आपकी सेवा से बाहर निकलने से पहले साफ करने की अनुमति देती है।

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