दिलचस्प पोस्ट
डॉट (।) ऑपरेटर और -> सी ++ में अंतर क्या है? अग्रवाल सूचकांक कैसे खोजें 0.0.0.0, 127.0.0.1 और लोकलहोस्ट के बीच अंतर क्या है? आप इस टूटे हुए यादृच्छिक शफल से क्या वितरण प्राप्त करते हैं? PHP में जावास्क्रिप्ट चर वैल्यू कैसे प्राप्त करें I बिना ज़्यादा शून्य के स्वरूपण अजगर में पायथन Android SQLite उदाहरण डिजिटल सर्टिफिकेट: .truststore फ़ाइल का उपयोग करने के लिए .cer फाइल कैसे आयात करें? क्या मैं एप्लिकेशन अपग्रेड पर सेटिंग्स खोने से बचने के लिए .NET उपयोगकर्ता सेटिंग्स का स्थान नियंत्रित कर सकता हूं? JQuery, स्प्रिंग एमवीसी @ अनुरोध बॉडी और जेएसओएन – यह एक साथ काम करता है SQLite तालिका बाधा – एकाधिक स्तंभों पर अद्वितीय HTML बटन या जावास्क्रिप्ट पर क्लिक करते समय फ़ाइल डाउनलोड ट्रिगर कैसे करें वीबीए का इस्तेमाल करते हुए टीएक्सटी फाइल बनाने और लिखना स्थिर स्मृति आवंटन और गतिशील स्मृति आवंटन के बीच का अंतर पायथन डिवीजन

मैं कैसे सत्यापित कर सकता हूं कि कोई Windows सेवा चल रही है या नहीं

मेरे पास सी # में एक एप्लीकेशन है (XP एम्बेडेड पर चल रहा है) जो एक 'वॉचडॉग' से संचार कर रहा है जिसे एक विंडोज सर्विस के रूप में लागू किया गया है जब डिवाइस बूट होता है, तो इस सेवा को शुरू करने के लिए कुछ समय लगता है। मैं जांचना चाहता हूं, मेरे कोड से, अगर सेवा चल रही है मैं यह कैसे हासिल कर सकता हूं?

वेब के समाधान से एकत्रित समाधान "मैं कैसे सत्यापित कर सकता हूं कि कोई Windows सेवा चल रही है या नहीं"

मुझे लगता है कि ऐसा कुछ काम करेगा:

अपने प्रोजेक्ट संदर्भ में सिस्टम। सेवाप्रक्रिया जोड़ें (यह नेट टैब पर है)।

using System.ServiceProcess; ServiceController sc = new ServiceController(SERVICENAME); switch (sc.Status) { case ServiceControllerStatus.Running: return "Running"; case ServiceControllerStatus.Stopped: return "Stopped"; case ServiceControllerStatus.Paused: return "Paused"; case ServiceControllerStatus.StopPending: return "Stopping"; case ServiceControllerStatus.StartPending: return "Starting"; default: return "Status Changing"; } 

संपादित करें: एक विधि sc.WaitforStatus() जो एक वांछित स्थिति और एक समय समाप्त होता है, कभी भी इसका इस्तेमाल नहीं करता है लेकिन यह आपकी आवश्यकताओं के अनुरूप हो सकता है

संपादित करें: एक बार स्थिति प्राप्त करने के बाद, आपको स्थिति फिर से प्राप्त करने के लिए आपको sc.Refresh()sc.Refresh() पहले कॉल करना होगा।

संदर्भ: .NET में सेवा कंट्रोलर वस्तु।

कृपया .NET में ServiceController ऑब्जेक्ट पर एक नज़र डालें।

यहां आप अपनी स्थानीय मशीन में सभी उपलब्ध सेवाएं और उनकी स्थिति प्राप्त कर सकते हैं।

 ServiceController[] services = ServiceController.GetServices(); foreach(ServiceController service in services) { Console.WriteLine(service.ServiceName+"=="+ service.Status); } 

आप सेवा के साथ अपनी सेवा की तुलना कर सकते हैं.नाम संपत्ति के भीतर पाश और आप अपनी सेवा की स्थिति प्राप्त करते हैं। विवरण के लिए http://msdn.microsoft.com/en-us/library/system.serviceprocess.servicecontroller.aspx के साथ भी जाएं http://msdn.microsoft.com/en-us/library/microsoft.windows.design .servicemanager (v = vs.90) .aspx