2011-12-29 6 views
27

मैं सोच रहा है क्या आपके आवेदन के मेनिफेस्ट में"asInvoker" और "उच्चतम उपलब्ध" निष्पादन स्तर के बीच क्या अंतर है?

<requestedExecutionLevel level="asInvoker" uiAccess="false" /> 

और

<requestedExecutionLevel level="highestAvailable" uiAccess="false" /> 

एम्बेड करने के बीच अंतर है।

उत्तर

28

यह described on MSDN है:

असल में, "asInvoker" उपयोगकर्ता के डिफ़ॉल्ट सुरक्षा सेटिंग का उपयोग करेगा। यह वर्णन किया गया है कि "एप्लिकेशन समान पहुंच टोकन के साथ पैरेंट प्रक्रिया के रूप में चलता है।", जिसका अर्थ है कि एक ही सुरक्षा टोकन को कॉलिंग प्रक्रिया के रूप में उपयोग किया जाता है, जो आम तौर पर डेस्कटॉप शैल होता है (या प्रक्रिया जो इसे लॉन्च करती है, अगर आप अपना लॉन्च करते हैं एक और कार्यक्रम से ऐप)।

"उच्चतम उपलब्ध" का उपयोग करने से एप्लिकेशन उच्चतम निजीकरण का उपयोग करके उपयोगकर्ता को प्राप्त कर सकता है। यदि वे एक व्यवस्थापक हैं, उदाहरण के लिए, उन्हें एक यूएसी प्रॉम्प्ट मिलेगा और ऐप व्यवस्थापक अधिकारों के साथ चलाएगा। हालांकि, यदि वे सामान्य उपयोगकर्ता हैं, तो उन्हें सामान्य सुरक्षा सेटिंग्स आदि मिलेंगी।

सामान्य रूप से, आप "asInvoker" का उपयोग करना चाहेंगे जब तक कि आपके पास अधिक अधिकारों का अनुरोध करने का कोई विशिष्ट कारण न हो।

+0

संभावित रूप से कोई और विशेषाधिकार नहीं है, तो अनुरोध किए गए एक्सेक्यूशनलेवल सहित सभी में अगर इनवॉकर का उपयोग किया जाए तो? – markmnl

+0

कोई यह सोचता है कि अगर हम "व्यवस्थापक के रूप में चलाएं" के लिए exe का चयन करते हैं, तो यह "उच्चतम उपलब्ध" में बदल जाएगा, लेकिन स्पष्ट रूप से यह मामला नहीं है। –

संबंधित मुद्दे