इस पोस्ट में मैं आपको दिखाऊंगा कि EventID 10016 . के साथ त्रुटि को कैसे ठीक किया जाए वितरितCOM . से Windows 10 या Windows Server 2012 R2 चलाने वाले कंप्यूटर पर स्रोत। DCOM 10016 इवेंट क्लाइंट और सर्वर विंडोज दोनों संस्करणों में काफी सामान्य है, विंडोज एक्सपी से शुरू होता है और आप विंडोज संस्करण की परवाह किए बिना इस त्रुटि को उसी तरह ठीक कर सकते हैं।
समस्या स्वयं को इस प्रकार दिखाती है:जब कंप्यूटर बूट करता है या कुछ एप्लिकेशन को प्रारंभ या स्थापित करने का प्रयास करता है, तो सिस्टम अनुभाग में विंडोज इवेंट व्यूअर में निम्न त्रुटि दिखाई देती है:
लॉग नाम :सिस्टमस्रोत :DistributedCOM
ईवेंट आईडी :10016
स्तर :त्रुटि
उपयोगकर्ता :सिस्टम
विवरण :मशीन-डिफ़ॉल्ट अनुमति सेटिंग्स CLSID {000209FF-0000-0000-C000-000000000046} के साथ COM सर्वर एप्लिकेशन के लिए स्थानीय सक्रियण अनुमति नहीं देती हैं और उपयोगकर्ता IIS APPPOOL\appIISPool SID (S-1-5-82) के लिए APPID अनुपलब्ध है -3351576649-1006875745-771203599-42452693-1279824824) पते से लोकलहोस्ट (एलआरपीसी का उपयोग करके) एप्लिकेशन कंटेनर में चल रहा है अनुपलब्ध एसआईडी (अनुपलब्ध)। इस सुरक्षा अनुमति को Component Services व्यवस्थापकीय उपकरण का उपयोग करके संशोधित किया जा सकता है।
त्रुटि विवरण के अनुसार:कुछ उपयोगकर्ता (उदाहरण के लिए, IIS ऐपपूल) या एक सिस्टम (NT AUTHORITY\SYSTEM) DCOM बुनियादी ढांचे का उपयोग करके कुछ COM घटक शुरू करने का प्रयास करता है और "स्थानीय लॉन्च" या "स्थानीय" के लापता होने के कारण ऐसा नहीं कर सकता है। सक्रियण ”अनुमति। त्रुटि कोड में केवल COM घटक और अनुप्रयोग के लिए कक्षाओं के कोड होते हैं। आइए यह निर्धारित करने का प्रयास करें कि पहचानकर्ता किस विशेष एप्लिकेशन से संबंधित है और इसे सफलतापूर्वक लॉन्च और सक्रिय करने के लिए आवश्यक अनुमतियां प्रदान करें।
ईवेंट विवरण से CLSID और APPID को कॉपी करें। मेरे मामले में यह है:
CLSID :{000209FF-0000-0000-C000-000000000046}
APPID:{AD65A69D-3831-40D7-9629-9B0B50A93843}
(कुछ मामलों में, एप्लिकेशन पहचानकर्ता निर्दिष्ट नहीं किया जा सकता है - APPID अनुपलब्ध)।
यह भी नोट करें कि कौन सी अनुमतियां गायब हैं (स्थानीय सक्रियण अनुमति) और किस खाते के लिए (NT AUTHORITY\SYSTEM या IIS APPPOOL\appIISPool SID — S-1-5-82-3351576649-1006875745-771203599-42452693-1279824824)।
प्रत्येक मामले में वर्ग, आवेदन, खाता पहचानकर्ता और पहुंच प्रकार भिन्न हो सकते हैं।- रजिस्ट्री संपादक चलाएँ (regedit.exe);
- अपने CLSID के अनुरूप रजिस्ट्री कुंजी पर जाएं। मेरे मामले में यह HKEY_CLASSES_ROOT\CLSID\ है {000209FF-0000-0000-C000-000000000046}; कुछ मामलों में, आपको रजिस्ट्री कुंजी HKEY_CLASSES_ROOT\Wow6432Node\CLSID\ को भी जांचना होगा। जब आप रजिस्ट्री से दूरस्थ रूप से कनेक्ट होते हैं, तो यह रजिस्ट्री अनुभाग HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID में स्थित होगा।
- क्लास पैरामीटर में ऐप का नाम निर्दिष्ट होना चाहिए (मेरे मामले में यह माइक्रोसॉफ्ट वर्ड एप्लीकेशन है); अक्सर DCOM त्रुटि 10016 निम्नलिखित घटकों के साथ होती है:इमर्सिव शेल
CLSID:{C2F03A33-21F5-47FA-B4BB-156362A2F239}
APPID:{316CDED5-E4AE-4B15-9113-7055D84DCC97}
रनटाइम ब्रोकर
CLSID:{D63B10C5-BB46-4990-A94F-E40B9D520160}
APPID :{9CA88EE3-ACB7-47C8-AFC4-AB702511C276} - रजिस्ट्री कुंजी पर राइट-क्लिक करें और अनुमतियां चुनें;
- उन्नत . पर क्लिक करें बटन;
- NT Service\TrustedInstaller या सिस्टम स्वामी . में निर्दिष्ट किया जाएगा अनुभाग;
- बदलें क्लिक करें बटन और अपने व्यवस्थापक खाते का नाम निर्दिष्ट करें। परिवर्तनों को सुरक्षित करें;
- कृपया ध्यान दें कि वर्तमान रजिस्ट्री कुंजी स्वामी का नाम आपके खाते में बदल गया है। बॉक्स को चेक करें उप-कंटेनरों और वस्तुओं पर स्वामी को बदलें और "ओके" पर क्लिक करें;
- अपना व्यवस्थापक खाता अनुमति सूची में जोड़ें और पूर्ण नियंत्रण grant प्रदान करें इसकी अनुमति;
- आपने CLSID के साथ रजिस्ट्री कुंजी को अनुमति दी है। अब आपको त्रुटि विवरण (उदाहरण के लिए, HKEY_CLASSES_ROOT\AppID\) से पिछले चरणों को दोहराने और अपने APPID की रजिस्ट्री कुंजी पर व्यवस्थापक खाते के लिए स्वामित्व और अनुमतियों को बदलने की आवश्यकता है। {AD65A69D-3831-40D7-9629-9B0B50A93843};
- अब घटक प्रबंधन कंसोल चलाएँ (dcomcnfg ) व्यवस्थापक के रूप में (नियंत्रण कक्ष -> सभी नियंत्रण कक्ष आइटम -> प्रशासनिक उपकरण -> घटक सेवाएं);
- घटक कंसोल में घटक सेवाएं अनुभाग पर जाएं -> कंप्यूटर -> मेरा कंप्यूटर -> DCOM कॉन्फ़िग . COM घटक सूची में उस घटक का नाम ढूंढें जिसे आपने दूसरे चरण में परिभाषित किया था (एप्लिकेशन आईडी कॉलम में मान DCOM 10016 त्रुटि विवरण से आपके CLSID से मेल खाना चाहिए); अगर आपको सूची में अपना घटक नहीं मिल रहा है, तो आप शायद विंडोज़ के 64-बिट संस्करण का उपयोग करते हैं, और जिस घटक को आप चलाना चाहते हैं वह 32-बिट वाला है। इस स्थिति में, आपको कमांड का उपयोग करके DCOM कंसोल को प्रारंभ करने की आवश्यकता है:
mmc comexp.msc /32
. - सुरक्षाक्लिक करें टैब। परिवर्तन के लिए सुलभ होने के लिए सभी प्रपत्र नियंत्रण; यदि आप घटक रजिस्ट्री कुंजी पर अनुमतियां बदलने से पहले dcomcnfg कंसोल खोलते हैं, तो सुरक्षा टैब पर सभी सेटिंग्स लॉक किया जा सकता है (बदला नहीं जा सकता), इस तथ्य के बावजूद कि आपने कंसोल को व्यवस्थापक के रूप में प्रारंभ किया है।
- मेरे मामले में, आवेदन के पास स्थानीय सक्रियण की अनुमति नहीं थी। लॉन्च और सक्रियण अनुमतियां . में अनुभाग में, कस्टमाइज़ करें select चुनें और संपादित करें . क्लिक करें बटन;
- आपको एसीएल में एक खाता जोड़ना होगा जो त्रुटि विवरण में निर्दिष्ट किया गया था। DCOM 10016 त्रुटि में पाठ के आधार पर, यह सिस्टम, एक विशिष्ट उपयोगकर्ता या वह खाता हो सकता है जिसके अंतर्गत IIS पूल चलता है (इस मामले में, आपको स्थानीय IIS_IUSR समूह के लिए एक्सेस जोड़ने की आवश्यकता है); यदि NT AUTHORITY\NETWORK SERVICE को NT AUTHORITY\SYSTEM के बजाय प्रारंभिक त्रुटि में निर्दिष्ट किया गया था, तो आपको NetworkService खाते के लिए स्थानीय लॉन्च और सक्रियण अनुमतियाँ निर्दिष्ट करनी होंगी।
- खाते के लिए आवश्यक अनुमतियां प्रदान करें। उदाहरण के लिए, स्थानीय लॉन्च =अनुमति दें और स्थानीय सक्रियण =अनुमति दें .
- कंप्यूटर को पुनरारंभ करें और इवेंट लॉग की जांच करें। त्रुटि DCOM 10016 गायब हो जानी चाहिए।