प्रोग्रामेटिक रूप से "इस प्रोग्राम को एडमिनिस्ट्रेटर के रूप में चलाएं" फ्लैग करने योग्य है?


0

मुझे विंडोज़ (XP, 7, 8) उपयोगकर्ताओं के लिए एक कार्यक्रम वितरित करने की आवश्यकता है। कार्यक्रम को प्रशासनिक अधिकारों की आवश्यकता है क्योंकि यह अन्य चीजों के साथ मार्गों को जोड़ता है और हटाता है। समस्या यह है कि निष्पादन योग्य पर "इस प्रोग्राम को व्यवस्थापक के रूप में चलाएं" ध्वज को संरक्षित नहीं किया गया है, इसलिए मुझे लगता है कि मैं एक बैच स्क्रिप्ट या सेटअप स्क्रिप्ट के समान कुछ का उपयोग करके प्रोग्रामेटिक रूप से इसे जोड़ सकता हूं।

क्या यह सही दृष्टिकोण है, और यदि ऐसा है तो कोई इस ध्वज को कैसे जोड़ता है?


2
AFAIR में आपको एक निष्पादन फ़ाइल को अपने निष्पादन योग्य में एम्बेड करना होगा।
gronostaj

इसलिए अगर ऐसी कोई घोषणा फ़ाइल विशेष रूप से बताती है कि निष्पादन योग्य को इस ध्वज / विकल्प को ले जाना चाहिए, तो यह विरासत में मिलेगा जब मैं निष्पादन योग्य को किसी अन्य सिस्टम में कॉपी करता हूं?
user135361

@gronostaj: एंबेडिंग की अनुमति है, लेकिन आवश्यक नहीं। आप इसे एक साइड फाइल (app.exe.manifest) में भी रख सकते हैं। लेकिन हां, यह एक बड़ी पीड़ा है। एक sane OS डिज़ाइनर ने इस ध्वज को जोड़ा होगा जहाँ अन्य सभी समान ध्वज (PE शीर्षलेख में) हैं, लेकिन Microsoft नहीं।
MSALERS 10

@ user135361 हाँ। एक उदाहरण के लिए मेरा जवाब नीचे देखें।
gronostaj 10

जवाबों:


7

आप निष्पादन योग्य संसाधनों में एक प्रकट फ़ाइल शामिल कर सकते हैं। यह विंडोज को सभी सिस्टम पर उस फाइल के लिए प्रशासक विशेषाधिकारों की आवश्यकता होगी।

आप रिसोर्स हैकर के साथ कोई भी इंस्टॉलर खोल सकते हैं और आपको एक्सएमएल फाइल इस तरह मिलेगी:

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <ms_asmv2:trustInfo xmlns:ms_asmv2="urn:schemas-microsoft-com:asm.v2">
    <ms_asmv2:security>
      <ms_asmv2:requestedPrivileges>
        <ms_asmv2:requestedExecutionLevel level="requireAdministrator" uiAccess="false"></ms_asmv2:requestedExecutionLevel>
      </ms_asmv2:requestedPrivileges>
    </ms_asmv2:security>
  </ms_asmv2:trustInfo>
</assembly>

वह मैनिफ़ेस्ट फ़ाइल है। आपको संसाधनों में संकलित कुछ इस तरह की आवश्यकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.