2013-08-23 14 views
12

मैं .NET प्रोजेक्ट से दूरस्थ रूप से सेवा शुरू या बंद कर सकता हूं।दूरस्थ रूप से सेवा को पुनरारंभ कैसे करें?

ConnectionOptions options = new ConnectionOptions(); 
options.Username = @"192.168.36.22\test"; 
options.Password = "test"; 
ManagementScope scope = new ManagementScope(@"\\192.168.36.22\root\cimv2", options); 
scope.Connect(); 


ManagementOperationObserver Stop = new ManagementOperationObserver(); 
Stop.Completed += new CompletedEventHandler(Stop_CallBack); 
try 
{ 
    string NameServices = "ArcGIS Server"; 
    WqlObjectQuery query = new WqlObjectQuery("SELECT * FROM Win32_Service WHERE Name=\"" + NameServices + "\""); 
    ManagementObjectSearcher find = new ManagementObjectSearcher(scope, query); 
    foreach (ManagementObject spooler in find.Get()) 
    { 
     spooler.InvokeMethod("StopService", new object[] { }); 
     spooler.InvokeMethod(Start, "StopService", new object[] { }); 
    } 
} 
.... 

मैं इस सेवा को पुनरारंभ कैसे कर सकता हूं?

+0

आप स्टॉप का उपयोग कर सकते हैं और फिर शुरू कर सकते हैं। यह समान हे। – FelProNet

उत्तर

16

तुम इतनी तरह ServiceController वर्ग इस्तेमाल कर सकते हैं:

ServiceController sc = new ServiceController("ArcGIS Server", "192.168.36.22"); 

sc.Start(); 
sc.Stop(); 

यह आपको लगता है कि सभी WMI के साथ बातचीत करने के लिए कोड लिखने के लिए होने की बचत होती है। ServiceController क्लास का उपयोग करने के लिए नोट, आपको System.ServiceProcess असेंबली का संदर्भ जोड़ना होगा।

+0

क्या मैं प्रबंधन ऑब्जेक्ट का उपयोग कर सेवा को पुनरारंभ कर सकता हूं? – novicegis

+0

हाँ, यदि आप प्रबंधन ऑब्जेक्ट का उपयोग करना चाहते हैं तो आपको केवल InvocMethod –

+1

पर "StartService" पास करने की आवश्यकता है जब मैं ServiceController का उपयोग करता हूं, तो मुझे अपवाद है "कंप्यूटर पर सेवा नियंत्रण प्रबंधक नहीं खोल सकता है '। इस ऑपरेशन को अन्य विशेषाधिकारों की आवश्यकता हो सकती है" – novicegis

-3

जब मैंने कनेक्ट करने का प्रयास किया तो मुझे एक ही समस्या आई है, बस लक्ष्य मशीन के 'उपयोगकर्ता' समूह में व्यवस्थापक के रूप में अपना मशीन नाम जोड़ें और आप डेटा लाने में सक्षम होंगे।

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