2012-01-10 15 views
7

खोले जाने पर "व्यवस्थापक के रूप में चलाएं" संकेत के लिए पूछना चाहिए, मुझे एक तेज प्रोग्राम द्वारा उत्पन्न एक्सई मिल रहा है। जब मैं exe चलाता हूं, तो मैं exac को व्यवस्थापक के रूप में चलाने के विकल्प के साथ एक यूएसी प्रॉम्प्ट दिखाना चाहता हूं। मैंने डिफ़ॉल्ट रूप से व्यवस्थापक के रूप में exe चलाने के उदाहरण देखा है। लेकिन, मैं यूएसी को व्यवस्थापक के रूप में exe चलाने के लिए कहने के लिए कैसे सक्षम करूं? कोई उपाय?सी तेज exe को

+1

हां, इसमें अनुरोध किए गए निष्पादन स्तर के साथ एक मेनिफेस्ट एम्बेड करना 'आवश्यकता प्रशासक' पर सेट है। एक खोज करो और आप पाएंगे। –

उत्तर

4

विंडोज विस्टा/7/सर्वर 2008 आर 2 उपयोगकर्ता खाता नियंत्रण (यूएसी) तकनीक का उपयोग करता है प्रशासक द्वारा अधिकृत किए जाने तक एप्लिकेशन के विशेषाधिकारों को सीमित करके मैलवेयर से ओएस की सुरक्षा और सुरक्षा। यही कारण है कि हमें अपने आवेदन को व्यवस्थापक के रूप में चलाने की आवश्यकता है। यह आमतौर पर आवेदन चलाते समय किया जाता है। प्रक्रिया है, एप्लिकेशन पर राइट क्लिक करें और व्यवस्थापकीय विशेषाधिकारों के साथ एप्लिकेशन को चलाने के लिए "व्यवस्थापक के रूप में चलाएं" पर क्लिक करें। यदि मान लीजिए कि उपयोगकर्ता ऐसा करने के लिए भूल जाता है और सामान्य रूप से एप्लिकेशन चलाता है, तो अप्रत्याशित व्यवहार देखा जा सकता है। चूंकि विस्टा और ऊपर जीतने के लिए सभी कार्यों को प्रशासनिक विशेषाधिकार की आवश्यकता होती है (उदाहरण के लिए, एक प्रक्रिया का आह्वान करना, सिस्टम ड्राइव आदि का उपयोग करना) नहीं किया जाएगा।

तो व्यवस्थापक के रूप में आवेदन हर बार चल रहा से बचने के लिए, हम डिफ़ॉल्ट रूप से व्यवस्थापक के रूप में हमारे आवेदन रन बना सकते हैं। इसे प्राप्त करने के लिए हमें एप्लिकेशन मैनिफेस्ट के साथ कुछ tweaking की आवश्यकता है। एक एप्लीकेशन मैनिफेस्ट एक एक्सएमएल फाइल है जो एक एप्लीकेशन का वर्णन करती है।

चरण 1:: परियोजना के गुणों पर जाएँ और "देखें विंडोज सेटिंग्स" बटन पर क्लिक करें

व्यवस्थापक के रूप में अपने .net आवेदन रन बनाने के लिए चरणों का पालन करें। यह फ़ाइल "app.manifest" खोल देगा।

चरण 2: requestedExecutionLevel कुंजी परिवर्तन में "requireAdministrator" और "गलत" uiAccess के मूल्य के रूप में स्तर के मूल्य। "आवश्यकता प्रशासक" के रूप में सेट करने का मतलब है कि एप्लिकेशन केवल प्रशासकों के लिए चलता है और यह आवश्यक है कि एप्लिकेशन को व्यवस्थापक के पूर्ण पहुंच टोकन के साथ लॉन्च किया जाए। uiAccess को "गलत" के रूप में सेट करने का अर्थ है कि एप्लिकेशन को डेस्कटॉप पर किसी अन्य विंडो के उपयोगकर्ता इंटरफ़ेस में इनपुट चलाने की आवश्यकता नहीं है। वे अनुप्रयोग जो अभिगम्यता प्रदान नहीं कर रहे हैं उन्हें इस झंडे को झूठा सेट करना चाहिए। डेस्कटॉप पर अन्य विंडो में इनपुट चलाने के लिए आवश्यक अनुप्रयोग (उदाहरण के लिए ऑन-स्क्रीन कीबोर्ड) को यह मान सही पर सेट करना चाहिए।

चरण 3: परिवर्तनों को सहेजें, अपने एप्लिकेशन का पुनर्निर्माण करें और इसे Win Vista या उच्च बॉक्स पर इंस्टॉल करें।

अब, एप्लिकेशन स्वचालित रूप से व्यवस्थापक के रूप में शुरू हो जाएगा।

6

दृश्य स्टूडियो में, "एप्लिकेशन मैनिफेस्ट फ़ाइल" जोड़ें (यदि आपके पास कोई नहीं है), तब एप्लिकेशन चलाने पर व्यवस्थापकीय विशेषाधिकारों का अनुरोध करने के लिए <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> जोड़ें।

1

आप इस लक्ष्य को हासिल करने के लिए ProcessStartInfo class or Windows principal उपयोग कर सकते हैं।

भी कर सकते हैं embed a manifest file in your application .exe और requestedExecutionLevel गुण सेट।

वहाँ भी सक्षम/अक्षम यूएसी गर्त windows registry के लिए एक रास्ता है।

6

आप "आवेदन मैनिफ़ेस्ट फ़ाइल" जोड़ने की जरूरत है। स्टेप-बाई-स्टेप

  • अपनी परियोजना पर राइट क्लिक करें
  • जोड़ें "नया आइटम"
  • का चयन करें "अनुप्रयोग मैनिफ़ेस्ट फ़ाइल"
  • इस
  • परिवर्तन स्तर = "requireAdministrator का पता लगाएं "
संबंधित मुद्दे