आमतौर पर DLL को अलग प्रोग्राम की तरह स्थापित नहीं किया जाता। यदि Windows बताता है कि कोई फ़ाइल अनुपलब्ध है, तो सही समाधान इस पर निर्भर करता है कि वह फ़ाइल किस घटक को प्रदान करनी चाहिए: स्वयं प्रोग्राम, Visual C++ Redistributable, DirectX या Windows। फ़ाइल डाउनलोड करके उसे सिस्टम फ़ोल्डर में कॉपी करने से शुरुआत न करें। इस मार्गदर्शिका में तीन व्यावहारिक तरीके हैं: आवश्यक घटक पुनर्स्थापित करना, Windows की जाँच करना और DLL की जाँच करना। हर तरीके के बाद उसी प्रोग्राम या गेम को चलाकर जाँचें जिसमें त्रुटि आई थी।

क्या DLL को मैन्युअल रूप से स्थापित करना आवश्यक है?

DLL एक लाइब्रेरी है जिसे कोई एप्लिकेशन अपनी निर्भरताओं के साथ लोड करता है; यह सार्वभौमिक इंस्टॉलेशन पैकेज नहीं है। इसलिए “xxx.dll डाउनलोड करके System32 में रखने” का तरीका सामान्यतः मूल कारण नहीं सुलझाता। फ़ाइल को अन्य DLL की आवश्यकता हो सकती है, वह एप्लिकेशन के संस्करण से मेल न खाती हो सकती है या उसकी आर्किटेक्चर अलग हो सकती है।

आपको क्या चाहिए सुरक्षित तरीका
किसी विशेष प्रोग्राम की DLL प्रोग्राम को आधिकारिक स्रोत से पुनः स्थापित करें
vcruntime , msvcp , msvcr संबंधित Microsoft Visual C++ Redistributable स्थापित या पुनर्स्थापित करें
d3dx9 , xinput , d3dcompiler आधिकारिक DirectX घटक पुनर्स्थापित करें या गेम को पुनः स्थापित करें
Windows की सिस्टम DLL पहले DISM, फिर SFC चलाएँ
डेवलपर द्वारा दी गई अलग DLL डेवलपर के दस्तावेज़ का ठीक-ठीक पालन करें
इंटरनेट से मिली अज्ञात DLL इसे मैन्युअल रूप से स्थापित न करें

DLL कैसे स्थापित करें: तरीकों की त्वरित तुलना

तरीका किसके लिए सबसे उपयुक्त प्रभावशीलता उपयोगकर्ता का प्रयास
घटक स्थापित करना या प्रोग्राम पुनः स्थापित करना एक एप्लिकेशन में त्रुटि या लाइब्रेरी का ज्ञात नाम घटक सही पहचानने पर उच्च कम
DISM और SFC कई प्रोग्रामों में त्रुटियाँ और सिस्टम DLL Windows घटकों के लिए उच्च मध्यम
Fionn DLL Fixer कारण अस्पष्ट हो या DLL व निर्भरताओं की जाँच चाहिए स्वचालित जाँच और सुधार कम

तरीका 1: घटक स्थापित करें या प्रोग्राम पुनः स्थापित करें

कब उपयोग करें: त्रुटि केवल एक प्रोग्राम में आती हो, या फ़ाइल का नाम किसी ज्ञात रनटाइम की ओर संकेत करता हो। उदाहरण के लिए, vcruntime140.dll के लिए अलग फ़ाइल न खोजें: Microsoft Visual C++ Redistributable स्थापित या पुनर्स्थापित करें। d3dx9 , xinput और d3dcompiler के लिए गेम का आधिकारिक इंस्टॉलर या आधिकारिक DirectX घटक उपयोग करें।

  1. त्रुटि संदेश से DLL का पूरा नाम और प्रोग्राम का नाम लिख लें।
  2. यदि त्रुटि केवल एक प्रोग्राम से संबंधित है, तो सेटिंग्स → ऐप्स → इंस्टॉल किए गए ऐप्स खोलें।
    Windows में इंस्टॉल किए गए प्रोग्राम और सुविधाएँ
  3. समस्याग्रस्त प्रोग्राम हटाएँ, या उपलब्ध होने पर उसका आधिकारिक मरम्मत विकल्प उपयोग करें।
  4. इंस्टॉलर केवल डेवलपर की आधिकारिक वेबसाइट या उसी स्टोर से डाउनलोड करें जहाँ से प्रोग्राम लिया था।
  5. प्रोग्राम या उसके बताए गए घटक को स्थापित करें और फिर से चलाएँ।

जाँच: प्रोग्राम “DLL not found” संदेश के बिना शुरू होता है। यदि इंस्टॉलर फिर भी वही फ़ाइल माँगता है, तो जाँचें कि चुना गया घटक प्रोग्राम की आर्किटेक्चर के अनुरूप है—32-बिट प्रोग्राम के लिए x86 और 64-बिट प्रोग्राम के लिए x64।

DLL कहाँ स्थापित करें: System32 या SysWOW64?

केवल नाम देखकर फ़ोल्डर न चुनें। 64-बिट Windows में System32 में 64-बिट सिस्टम लाइब्रेरी होती हैं, जबकि SysWOW64 में 32-बिट लाइब्रेरी होती हैं; ऐतिहासिक कारणों से नाम उलटे लगते हैं। फिर भी Windows DLL को केवल एक निश्चित फ़ोल्डर में नहीं खोजता: एप्लिकेशन फ़ोल्डर, सिस्टम फ़ोल्डर और अन्य अनुमत खोज पथ इसमें शामिल होते हैं। साथ ही, DLL स्वयं अन्य लाइब्रेरी पर निर्भर हो सकती है।

क्या DLL को regsvr32 से पंजीकृत करना आवश्यक है?

नहीं, डिफ़ॉल्ट रूप से नहीं। regsvr32 DLL इंस्टॉलर नहीं है: यह केवल उन DLL और OCX के साथ काम करता है जो संबंधित स्व-पंजीकरण का समर्थन करते हैं। सामान्य अनुपलब्ध DLL त्रुटि का अर्थ यह नहीं है कि पंजीकरण आवश्यक है। regsvr32 का उपयोग केवल तभी करें जब प्रोग्राम का डेवलपर या उसका आधिकारिक दस्तावेज़ किसी विशेष फ़ाइल को पंजीकृत करने के लिए स्पष्ट रूप से कहे और उपयुक्त कमांड बताए।

तरीका 2: Windows सिस्टम फ़ाइलें पुनर्स्थापित करें

कब उपयोग करें: समान त्रुटियाँ कई असंबंधित प्रोग्रामों में हों, Windows में खराबी के बाद, या सिस्टम घटकों के क्षतिग्रस्त होने का संदेह हो। Microsoft पहले DISM और फिर SFC चलाने की सलाह देता है।

DISM.exe Online Cleanup Image Restorehealth कमांड
  1. Windows Terminal (Administrator) खोलें।
  2. यह कमांड चलाएँ और इसके पूरा होने की प्रतीक्षा करें:
    DISM.exe /Online /Cleanup-image /Restorehealth
        
  3. DISM के बाद यह कमांड चलाएँ:
sfc /scannow
  
  1. यदि Windows फ़ाइलें ठीक करने की सूचना दे, तो कंप्यूटर पुनः प्रारंभ करें।
  2. समस्याग्रस्त एप्लिकेशन को फिर से चलाएँ।

जाँच: SFC स्कैन पूरा करके परिणाम बताता है और एप्लिकेशन पिछली त्रुटि के बिना खुलता है। विवरण SFC और DISM के लिए Microsoft के निर्देशों में उपलब्ध हैं।

तरीका 3: Fionn DLL Fixer से DLL और सिस्टम घटकों की जाँच करें

कब उपयोग करें: अनुपलब्ध, क्षतिग्रस्त या असंगत DLL, System32 की समस्याओं अथवा DirectX, Visual C++, .NET, OpenAL और XInput की निर्भरताओं का निदान करना हो, और घटक को मैन्युअल रूप से पहचानने में बहुत समय लग रहा हो। Windows के लिए Fionn DLL Fixer स्कैन, सुधार और दोबारा जाँच का समर्थन करता है।

  1. Fionn DLL Fixer चलाएँ और DLL व सिस्टम समस्याओं के स्वचालित स्कैन के पूरा होने की प्रतीक्षा करें। Fionn DLL Fixer शुरू करें
  2. स्कैन के बाद, मिली हुई समस्याओं को ठीक करना शुरू करने के लिए Repair पर क्लिक करें। स्कैन पूरा होने के बाद सभी मिली DLL और सिस्टम समस्याओं को स्वचालित रूप से ठीक करने के लिए Repair पर क्लिक करें
  3. प्रक्रिया समाप्त होने तक प्रतीक्षा करें; इस दौरान बटन पर Fixing दिखता है। मरम्मत प्रक्रिया चलने के दौरान प्रतीक्षा करें
  4. पुष्टिकरण संवाद में Ok पर क्लिक करें; अनुरोध मिलने पर कंप्यूटर पुनः प्रारंभ करें। मरम्मत पूरी होने पर पुष्टिकरण संवाद में Ok पर क्लिक करें
  5. यदि पुनः प्रारंभ करने के बाद भी त्रुटि बनी रहे, तो Recheck पर क्लिक करें; नई समस्याएँ मिलने पर फिर Repair चुनें। यदि पुनः प्रारंभ करने के बाद भी समस्या बनी रहे, तो दूसरा स्कैन करने के लिए Recheck पर क्लिक करें

जाँच: दोबारा किया गया स्कैन पिछली समस्या नहीं दिखाता और एप्लिकेशन शुरू होता है। यह तरीका निदान को सरल बनाता है, लेकिन यदि प्रोग्राम की अपनी फ़ाइलें क्षतिग्रस्त हैं तो यह उस प्रोग्राम को पुनः स्थापित करने का विकल्प नहीं है।

निष्कर्ष

DLL सही तरीके से स्थापित करने के लिए, अलग फ़ाइल रखने की जगह पहले उसे उपलब्ध कराने वाले घटक की पहचान करें। एक प्रोग्राम में त्रुटि हो तो उसे या उसके आधिकारिक रनटाइम को पुनः स्थापित करें; कई प्रोग्रामों में सिस्टम त्रुटियों के लिए पहले DISM और फिर SFC चलाएँ। यदि त्रुटि का स्रोत स्पष्ट नहीं है और DLL, सिस्टम पथ तथा गेम निर्भरताओं की जाँच आवश्यक है, तो Fionn DLL Fixer का उपयोग करें। सफलता की पुष्टि केवल समस्याग्रस्त प्रोग्राम के सफलतापूर्वक शुरू होने से होती है। यदि संदेश नहीं बदलता, तो उसका पूरा पाठ सहेजें और डेवलपर की आधिकारिक सहायता से संपर्क करें।

अक्सर पूछे जाने वाले प्रश्न

क्या DLL को प्रोग्राम फ़ोल्डर में रखा जा सकता है?

केवल तभी, जब किसी विशेष प्रोग्राम संस्करण के लिए डेवलपर का आधिकारिक दस्तावेज़ स्पष्ट रूप से ऐसा निर्देश दे। अन्य मामलों में प्रोग्राम या उसका रनटाइम पुनः स्थापित करें: इससे संगत निर्भरताओं का पूरा सेट पुनर्स्थापित होता है।

64-बिट DLL को अपने-आप SysWOW64 में क्यों नहीं रखा जाना चाहिए?

64-बिट Windows में SysWOW64 32-बिट सिस्टम लाइब्रेरी के लिए है। फिर भी फ़ोल्डर को मैन्युअल रूप से चुनना सार्वभौमिक समाधान नहीं है, क्योंकि DLL खोज नियमों के अनुसार लोड होती हैं और अन्य फ़ाइलों पर निर्भर हो सकती हैं।

regsvr32 कमांड की आवश्यकता कब होती है?

केवल स्व-पंजीकरण समर्थित DLL या OCX के लिए और डेवलपर के स्पष्ट निर्देश पर। यह अधिकांश अनुपलब्ध DLL संदेशों को ठीक नहीं करती।

vcruntime140.dll के लिए क्या करें?

आधिकारिक स्रोत से संबंधित Microsoft Visual C++ Redistributable स्थापित या पुनर्स्थापित करें, अथवा उस प्रोग्राम को पुनः स्थापित करें जिसे इसकी आवश्यकता है। अनधिकृत कैटलॉग से अलग फ़ाइल डाउनलोड न करें।

क्या DISM और SFC दोनों चलाना आवश्यक है?

सिस्टम फ़ाइलों की मरम्मत के लिए Microsoft पहले DISM और फिर SFC चलाने की सलाह देता है। ये कमांड किसी अलग प्रोग्राम की फ़ाइलों को पुनः स्थापित करने का विकल्प नहीं हैं।