c# - Process.Start() keeps running my .exe as a background process MVC ASP.Net -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 6 जवाब
सबसे पहले मैंने चेक किया है वेब एक कोशिश करने और खोजने के लिए, लेकिन मैं केवल उन लोगों में आया हूं जो पृष्ठभूमि में अपनी प्रक्रियाओं को चलाने के लिए चाहते हैं, जबकि मेरी समस्या यहां विपरीत दिशा में है।
मैंने अपने नियंत्रक पर निम्नलिखित कोड दर्ज किया है जिससे बटन क्लिक होने पर प्रक्रिया शुरू की जाती है:
स्ट्रिंग फ़ाइल स्थान = @ "सी: \ somefolder \ anotherolder \ ... \ application.exe"; ProcessStartInfo oStartInfo = नया प्रोसेस्टस्टार्ट इन्फोस (); OStartInfo.FileName = फ़ाइल स्थान; OStartInfo.UseShellExecute = false; OStartInfo.CreateNoWindow = सच; OStartInfo.WindowStyle = प्रक्रिया WindowStyle.Normal; OStartInfo.CreateNoWindow = false; Var प्रक्रिया = नई प्रक्रिया {StartInfo = oStartInfo, EnableRaisingEvents = true}; process.Start (); अब मैंने कोड चलाया है और यह exe निष्पादित कर रहा है या ऐसा तब दिखाई देगा जब मैं कार्य प्रबंधक को खोल देगा। लेकिन मैं इसको अग्रभूमि में निष्पादित करने के लिए इसे प्राप्त करने के लिए प्रतीत होता है ताकि उपयोगकर्ता जो कर सकता है वह कर सकें।
* अतिरिक्त जानकारी
-
जब भी मैं चलने के बाद पुनर्निर्माण की कोशिश करता हूं एक समस्या है क्योंकि एक्सई परियोजना के वेब भाग के समान समाधान में है, लेकिन समस्या यह है कि मुझे कार्य प्रबंधक पर जाना होगा और प्रक्रिया को मारना होगा क्योंकि अन्यथा यह .exe का उपयोग नहीं कर सकता है - यह एक और प्रमुख कारण है जिसे मुझे इसे अग्रभूमि में चलाने की आवश्यकता है
- एमवीसी एस्पनेट वेब प्रोजेक्ट
किसी भी मदद के लिए
कृपया यहां देखें:
एएसपी। नेट वेब पेज और सर्वर नियंत्रण कोड वेब सर्वर पर एएसपी.नेट वर्कर प्रक्रिया के संदर्भ में कार्यान्वित करता है। यदि आप एक asp.net वेब पेज या सर्वर नियंत्रण में प्रारंभ विधि का उपयोग करते हैं, तो नई प्रक्रिया प्रतिबंधित सर्वर के साथ वेब सर्वर पर कार्यान्वित होती है। यह प्रक्रिया क्लाइंट ब्राउज़र के समान संदर्भ में शुरू नहीं होती है, और उसके पास उपयोगकर्ता डेस्कटॉप तक पहुंच नहीं है।
इसलिए, सर्वर सर्वर की ओर चलाएगा, ग्राहक की ओर नहीं, और यह एएसपी.Net वर्कर प्रोसेस (w3wp.exe) के यूज़र प्रोफाइल में भी चलाएगा, जिसका अर्थ है कि आप प्रोसेस विंडो नहीं देखेंगे जब तक आप एक ही प्रोफाइल में इंटरैक्टिव रूप से लॉग इन नहीं करते हैं।
Comments
Post a Comment