2012-07-11 6 views
5

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

विंडोज स्थानीय कंप्यूटर पर सेवा {सेवा के नाम} प्रारंभ नहीं हो सका मिला है। त्रुटि 1067: प्रक्रिया अप्रत्याशित रूप से समाप्त हो गई। , कोई मदद नहीं;

मैं कंप्यूटर (एक आभासी मशीन, मामले में है कि एक फर्क नहीं पड़ता सर्वर 2008 R2) को पुनः आरंभ। अनइंस्टॉल किया गया और मेरी सेवा को पुनर्स्थापित किया गया, और फिर भी वह त्रुटि मिल गई!

मशीन पर कुछ को साफ़/ताज़ा करने की आवश्यकता है ताकि वह फिर से सेवा शुरू करने का प्रयास करे। मैं पूरी आभासी मशीन का पुनर्निर्माण नहीं करना चाहता लेकिन मैं विचारों से बाहर हूं। 3 अन्य मशीनों पर चल रहा है ऊपर त्रुटि के बिना - ठीक उसी कोड & स्थापित -

अद्यतन

मुझे लगता है कि यह Windows सेवा उल्लेख करना भूल गया। ऑनस्टार्ट() में उस डीबगर में डालने के बावजूद अभी भी जाने का तरीका लगता है।

+2

आम तौर पर इस एक बिना क्रिया का अपवाद के कारण है। –

+2

इसका मतलब है कि आपके कोड में कुछ त्रुटि है। यह देखने के लिए इवेंट लॉग देखें कि यह आपको कौन सी जानकारी दे रहा है। लॉगिंग तंत्र जोड़ने का भी प्रयास करें ताकि आप जान सकें कि क्या गलत है – Shyju

+0

क्या आपकी सेवा नेटवर्क ड्राइव तक पहुंचती है? – roymustang86

उत्तर

9

यदि आपके पास कोड तक पहुंच है, तो आप OnStart विधि की पहली पंक्ति में एक विधि Debugger.Break जोड़ सकते हैं।

एक बार जब आप एप्लिकेशन में "ब्रेक" करते हैं तो जांच करें कि अपवाद फेंक दिया गया है।

+0

साफ। वह नहीं जानता था। – NotMe

+0

मैंने ऑनस्टार्ट() की पहली पंक्ति में डीबगर। ब्रेक() डाल दिया है लेकिन इसे हिट नहीं किया जा रहा है :( – Hari

+0

@ हैरी क्या आप जांच सकते हैं कि आपका एप्लिकेशन डीबग कॉन्फ़िगरेशन (और रिलीज़ नहीं) के साथ संकलित है या नहीं? – oleksii

1

आप डीबगर को चल रहे सेवा में संलग्न कर सकते हैं। Debug Windows Service Applications पर विवरण।

यह भाग्यशाली है कि आप आसानी से समस्या को दोहरा सकते हैं। आप अपनी समस्या को डीबग करने के लिए कोड के साथ .NET स्टूडियो इंस्टॉल कर सकते हैं।

एक और तकनीक सेवा को नियमित ऐप में बनाना है। आप जानते हैं कि संदिग्ध कोड स्टार्टअप के दौरान है। तो बस स्टार्टअप फ़ंक्शन में कोड के साथ ऐप बनाएं, और वहां से डीबगिंग शुरू करें।

गुड लक,

टॉमी Kwee