के माध्यम से शुरू की गई प्रक्रिया के रूप में आईआईएस एक्सप्रेस को कैसे चलाया जाए, मैं अपने आवेदन के साथ आईआईएस एक्सप्रेस वितरित करने की कोशिश कर रहा हूं। आईआईएस एक्सप्रेस पोर्ट 80 पर बाहरी वेब अनुरोधों की सेवा करेगा।विंडोज सेवा
मुझे आईआईएस एक्सप्रेस चलाने के साथ-साथ बाहरी अनुरोधों की सेवा करने में कोई समस्या नहीं है, हालांकि माइक्रोसॉफ्ट ने अपने अनंत ज्ञान में आईआईएस एक्सप्रेस को कंसोल विंडो से चलाने के साथ-साथ सिस्टम ट्रे आइटम । आप ट्रे आइटम को कमांड लाइन तर्क से अक्षम कर सकते हैं लेकिन कंसोल विंडो नहीं।
मैं कंसोल विंडो प्रदर्शित किए बिना आईआईएस एक्सप्रेस चलाने के लिए चाहता हूं। मैं विंडोज़ सेवा से आईआईएस एक्सप्रेस भी चला सकता हूं।
अपने आवेदन के भीतर से निम्नलिखित कोड चल रहा है वास्तव में करता है जो मैं चाहता:
Directory.SetCurrentDirectory(string.Format("{0}\\IIS Express", iisProgramDirectory));
process.EnableRaisingEvents = true;
//process.Exited += new EventHandler(process_Exited);
process.StartInfo.FileName = "iisexpress.exe";
process.StartInfo.Arguments = string.Format("\"/config:{0}webservice\\config\\applicationhost.config\"", dataDirectory);
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
//process.StartInfo.UserName = "Administrator";
//System.Security.SecureString securePwd = new System.Security.SecureString();
//string password = "**********";
//char[] pword = password.ToCharArray();
//for (int i = 0; i < pword.Length; i++)
//{
// securePwd.AppendChar(pword[i]);
//}
//process.StartInfo.Password = securePwd;
process.Start();
जाहिर है मैं व्यवस्थापक के रूप में चल रहा हूँ। आईआईएस एक्सप्रेस को बाहरी अनुरोधों के साथ-साथ पोर्ट 80 पर सुनने के लिए प्रशासक विशेषाधिकारों के साथ चलाने की जरूरत है।
मेरी विंडोज सेवा विंडोज सेवा खाते के तहत चलती है, जिसका मेरा मानना है कि पूर्ण विशेषाधिकार हैं लेकिन आईआईएस एक्सप्रेस प्रक्रिया सिर्फ शानदार रूप से बाहर निकलती है जब मैं इसे विंडोज सेवा से चलाने की कोशिश करता हूं तो 0 का त्रुटि कोड।
मैंने कई परिदृश्यों की कोशिश की है (जैसा कि आप कोड स्निपेट से देख सकते हैं) लेकिन ऐसा लगता है कि मैं आईआईएस एक्सप्रेस को अपनी विंडोज सेवा का उपयोग करके चल रहा हूं और डर्न कंसोल विंडो छुपा सकता हूं।
किसी भी सुझाव की सराहना की जाएगी।
पुनश्च: पर
अच्छा लेख। क्या आप पूछे गए प्रश्नों के लिए और अधिक जवाब भी स्वीकार कर सकते हैं। –