मेरे पास एक एमएसआई इंस्टॉलर का उपयोग कर एक विंडोज फॉर्म एप्लिकेशन (सी #, नेट 3.5) स्थापित है। इस एप्लिकेशन में मेरे पास एक बटन है जो दबाए जाने पर एक ब्राउज़र को एक विशिष्ट यूआरएल के साथ खोलता है। मैंसी # विंडोज़ फॉर्म इंस्टॉलेशन के बाद डिफ़ॉल्ट ब्राउज़र नहीं खोलता
Process.Start(url);
का उपयोग ब्राउज़र को खोलने के लिए। यह डिबगिंग करते समय ठीक काम करता है, लेकिन स्थापना के बाद यह इष्टतम परिणामों से कम है। उदाहरण के लिए।
- यदि मैं इसे जस्ट मी विकल्पों के साथ स्थापित करता हूं तो मैं वर्तमान सेटिंग्स के साथ अपना डिफ़ॉल्ट ब्राउज़र (एफएफ) खोलता हूं।
- अगर मैं हर कोई विकल्प के साथ इसे स्थापित है, जब मैं बटन प्रेस यह जहाँ तक मेरा कर सकते हैं एक
के साथ बाहर मेरी हाल ही में किसी भी सेटिंग को (प्रॉक्सी, टूलबार आदि प्रदर्शित) IE के संस्करण खुलेगा यह समस्या बताते समय एप्लिकेशन के साथ जुड़े उपयोगकर्ता द्वारा उत्पन्न किया गया है।
इस बात को ध्यान में रखते हुए कि उपयोगकर्ताओं को प्रॉक्सी और व्यक्तिगत ब्राउज़र सेटिंग्स की आवश्यकता हो सकती है और बस मुझे, हर किसी को उपयोगकर्ता के लिए रहना चाहिए। ओक्शन का सबसे अच्छा कोर्स क्या है?
मैं
ProcessStartInfo.UserName = Environment.UserName
का उपयोग कर मौजूदा उपयोगकर्ता के प्रवेश के साथ Process.Start (यूआरएल) को कॉल करने की कोशिश की लेकिन यह भी एक पासवर्ड की आवश्यकता है और साख के लिए पूछ एक विकल्प नहीं है।
क्या आपके पास कोई अन्य सुझाव है, क्या मैं प्रक्रिया का उपयोग कर रहा हूं। स्टार्ट() गलत तरीके से, क्या सेटिंग के दौरान मुझे सेटिंग्स की आवश्यकता है, क्या मुझे कुछ याद आया है?
अद्यतन: data_smith के रूप में प्रोसेस एक्सप्लोरर का उपयोग करते हुए सुझाव दिया मैं निम्नलिखित देखा:
- अगर मैं सभी के लिए आवेदन स्थापित यह NT प्राधिकारी \ SYSTEM उपयोगकर्ता इसलिए बिना कॉन्फ़गर ब्राउज़र के तहत शुरू कर देंगे।
- अगर मैं स्थापित बस मेरे साथ आवेदन यह के तहत शुरू होता है वर्तमान उपयोगकर्ता
वहाँ एक रास्ता है, वर्तमान उपयोगकर्ता के तहत क्रेडेंशियल के लिए पूछ रहे हैं, (विंडोज़ बूट पर) आवेदन शुरू करने के लिए बिना चयनित भी हालांकि यह हर किसी के लिए स्थापित है?
अद्यतन: data_smith द्वारा एक सुझाव ShellExecute और सुझावों here और here मैं इस समस्या को हल करने और वांछित व्यवहार प्राप्त करने में सक्षम था का उपयोग करने के बाद।
मुख्य मुद्दा यह था कि जब इंस्टॉलर समाप्त हो गया तो प्रक्रिया Process.Start() के साथ शुरू हुई थी; इसने एनटी प्राधिकरण \ सिस्टम उपयोगकर्ता (उपयोगकर्ता इंस्टॉलर के तहत चलने वाले) के रूप में एप्लिकेशन शुरू किया, इसलिए इस एप्लिकेशन द्वारा खोले गए सभी ब्राउज़र सिस्टम उपयोगकर्ता के अधीन भी होंगे। Data_smith से सुझाव का उपयोग करके और ऊपर दिए गए सुझाव मैं वर्तमान उपयोगकर्ता के तहत प्रक्रिया शुरू करने में सक्षम था।
कंप्यूटर रीबूट होने के बाद एप्लिकेशन सही उपयोगकर्ता के अंतर्गत शुरू होता है क्योंकि यह रजिस्ट्री प्रविष्टियों के माध्यम से कॉन्फ़िगर किया गया है।
क्या आप अपना एप्लिकेशन इंस्टॉलर से चलाते हैं? – ogggre
एप्लिकेशन इंस्टॉल होने के बाद यह तुरंत शुरू हो जाता है और यह हमेशा मशीन स्टार्टअप पर शुरू होता है। यह सिस्टम ट्रे में बैठता है। – Constantin
मुझे लगता है कि @ogggre क्या पूछा गया था, क्या आपका एप्लिकेशन इंस्टॉलर द्वारा लॉन्च किया गया है? यह एक "प्रमाण पत्र" -संबंधित समस्या हो सकती है। आपके प्रोग्राम के अभिभावक को देखने के लिए ProcExp (SysInternals द्वारा) का उपयोग करें। – data