2013-01-07 17 views
11

मैं विंडो शुरू करने और रोकने के लिए सी # कोड का उपयोग कर रहा हूं लेकिन मुझे यह त्रुटि मिल रही है।System.ComponentModel.Win32Exception: एक्सेस अस्वीकार कर दिया गया है त्रुटि

System.ComponentModel.Win32Exception: Access is denied 

कृपया मेरी मदद करें।

मेरे कोड:

public void StartService(string serviceName, int timeoutMilliseconds) 
    { 
     ServiceController service = new ServiceController(serviceName); 
     try 
     { 
      TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds); 

      service.Start(); 
      service.WaitForStatus(ServiceControllerStatus.Running, timeout); 
      lblMessage.Text = "Service Started."; 
     } 
     catch (Exception ex) 
     { 
      //lblMessage.Text = "Error in Service Starting."; 
      lblMessage.Text = ex.ToString(); 
     } 
    } 
+1

क्या आप सुनिश्चित हैं कि उपयोगकर्ता खाते में सेवा शुरू करने के लिए आवश्यक अनुमतियां हैं? क्या आप स्टैक ट्रेस पोस्ट कर सकते हैं? –

+0

यहां भी देखें: http://stackoverflow.com/questions/6070295/starting-a-service-in-asp-net-c-with-the-right-permissions –

+0

स्टैक ट्रेस सिस्टम है। अविश्वसनीय अपवाद अपवाद: aspnet_state नहीं खोल सकता कंप्यूटर पर सेवा '।'। ---> System.ComponentModel.Win32Exception: एक्सेस अस्वीकार कर दिया गया है --- आंतरिक अपवाद स्टैक ट्रेस का अंत --- System.ServiceProcess.ServiceController.GetServiceHandle (Int32 वांछित एक्सेस) System.ServiceProcess.ServiceController.Start (स्ट्रिंग [] args पर) System.ServiceProcess.ServiceController.Start() पर _Default.StartService पर (स्ट्रिंग सेवा नाम, Int32 टाइमआउट Milliseconds) – Mahesh

उत्तर

10

अपने सर्वर पर सुनिश्चित करें कि आपके अनुप्रयोग पूल पहचान खाता बनाने अनुमतियाँ कि सेवा शुरू करने के लिए है। यह आपके एएसपी.NET विकास सर्वर पर काम करता है क्योंकि यह आपके उपयोगकर्ता खाते (व्यवस्थापक) के तहत चलाता है डिफ़ॉल्ट आईआईएस कॉन्फ़िगरेशन में, यह खाता नेटवर्क सेवा या एप्लिकेशनपूल इडेंटिटी (आईआईएस संस्करण के आधार पर) है और आमतौर पर सेवाओं का प्रबंधन नहीं कर सकता है।

तो, आईआईएस प्रबंधक (एप्लिकेशन पूल/NameOfYourYourPool/उन्नत सेटिंग्स) में पूल खाता बदलें। आप एक अंतर्निहित खाते का उपयोग कर सकते हैं या अपने डोमेन में से किसी एक का उपयोग कर सकते हैं।

apppool

3

व्यवस्थापक मोड में अपने वी.एस. भागो और domainname \ username.Hope यह काम करेंगे की तरह कंप्यूटर डोमेन नाम के साथ व्यवस्थापक mode.Give उचित उपयोगकर्ता नाम में cmd ​​वी.एस. अपने project.Open डेवलपर लोड।

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