DLL फाइलें क्या हैं, और मेरे पीसी से क्यों गायब है?
जब आपको यह कहते हुए एक त्रुटि मिलती है कि विंडोज़ को एक विशेष DLL फ़ाइल नहीं मिली है, तो यह भयानक रूप से वहाँ से कई DLL साइटों में से एक फ़ाइल को डाउनलोड करने के लिए लुभावना हो सकता है। यहाँ तुम क्यों नहीं करना चाहिए.
DLL क्या हैं?
इससे पहले कि हम शुरू करें कि आप इंटरनेट से डायनेमिक लिंक लाइब्रेरी (DLL) फ़ाइलों को डाउनलोड क्यों नहीं करें, आइए पहले नज़र डालते हैं कि DLL फाइलें क्या हैं। DLL फ़ाइल एक लाइब्रेरी है जिसमें विंडोज में किसी विशेष गतिविधि को करने के लिए कोड और डेटा का एक सेट होता है। ऐप्स तब उन DLL फ़ाइलों पर कॉल कर सकते हैं जब उन्हें उस गतिविधि की आवश्यकता होती है। DLL फाइलें निष्पादन योग्य (EXE) फाइलों की तरह होती हैं, सिवाय इसके कि DLL फाइलें सीधे विंडोज में निष्पादित नहीं की जा सकती हैं। दूसरे शब्दों में, आप एक DLL फाइल को डबल क्लिक नहीं कर सकते हैं इसे उसी तरह से चला सकते हैं जब आप एक EXE फाइल करेंगे। इसके बजाय, DLL फ़ाइलों को अन्य ऐप्स द्वारा कॉल करने के लिए डिज़ाइन किया गया है। वास्तव में, वे एक ही बार में कई ऐप द्वारा कॉल किए जाने के लिए डिज़ाइन किए गए हैं। DLL नाम का "लिंक" भाग एक और महत्वपूर्ण पहलू भी बताता है। कई डीएलएल को एक साथ जोड़ा जा सकता है ताकि जब एक डीएलएल को कॉल किया जाए, तो उसी समय कई अन्य डीएलएल को भी बुलाया जाता है।.
विंडोज़ स्वयं DLL का व्यापक उपयोग करता है, टूर के माध्यम से C: \ Windows \ System32
फ़ोल्डर आपको बता सकता है। हम किस बारे में बात कर रहे हैं, इसका एक उदाहरण के रूप में, आइए विंडोज सिस्टम फाइल पर विचार करें "comdlg32.dll।" इस फाइल को, अन्यथा कॉमन डायलॉग बॉक्स लाइब्रेरी के रूप में जाना जाता है, इसमें आपके द्वारा देखे जाने वाले कई सामान्य संवाद बॉक्स के निर्माण के लिए कोड और डेटा होता है। फ़ाइलें खोलने, दस्तावेज़ों को प्रिंट करने और इसी तरह की चीज़ों के लिए विंडोज-संवाद। इस DLL में दिए गए निर्देश संवाद बॉक्स के लिए संदेश प्राप्त करने और व्याख्या करने से सब कुछ संभालते हैं, यह निर्दिष्ट करने के लिए कि संवाद बॉक्स आपकी स्क्रीन पर कैसा दिखता है। जाहिर है, एक ही समय में कई ऐप्स इस DLL पर कॉल कर सकते हैं, अन्यथा आप एक समय में एक से अधिक ऐप में एक डायलॉग बॉक्स (जैसे नीचे वाला) नहीं खोल पाएंगे.
DLLs कोड को संशोधित और पुन: उपयोग करने की अनुमति देते हैं, जिसका अर्थ है कि डेवलपर्स को सांसारिक या सामान्य कार्यों को करने के लिए स्क्रैच से कोड लिखने में समय बिताना नहीं पड़ता है। और हालांकि डेवलपर्स अपने ऐप के साथ इंस्टॉल करने के लिए अपने स्वयं के DLL बनाएंगे, एप्लिकेशन द्वारा कहे जाने वाले DLL के विशाल बहुमत को वास्तव में विंडोज के साथ या अतिरिक्त पैकेजों के साथ बंडल किया जाता है, जैसे Microsoft .NET फ्रेमवर्क या Microsoft C ++ Redistributables। इस तरह से कोड को संशोधित करने का दूसरा बड़ा फायदा यह है कि अपडेट प्रत्येक DLL पर लागू होने में आसान होते हैं बजाय एक संपूर्ण ऐप के-खासकर जब उन DLL ऐप के डेवलपर से नहीं आते हैं। उदाहरण के लिए, जब Microsoft अपने .NET फ्रेमवर्क में कुछ DLL अपडेट करता है, तो सभी DLLs का उपयोग करने वाले सभी ऐप तुरंत अद्यतन सुरक्षा या कार्यक्षमता का लाभ उठा सकते हैं.
डीएलएल डाउनलोड किए जा सकते हैं
तो, हमारे बेल्ट के तहत DLL की थोड़ी समझ के साथ, क्यों नहीं उन्हें इंटरनेट से डाउनलोड करें जब कोई आपके सिस्टम से गायब हो?
डाउनलोड की गई DLL में आपके द्वारा सबसे आम समस्या यह होगी कि वे पुरानी हो चुकी हैं। DLL की कई साइटें अपने DLL को केवल अपने स्वयं के या अपने उपयोगकर्ताओं के कंप्यूटर से अपलोड करके प्राप्त करती हैं। आप समस्या को पहले ही देख सकते हैं। इनमें से अधिकांश साइटें केवल आपका ट्रैफ़िक चाहती हैं, और एक बार DLL अपलोड होने के बाद, उन्हें यह सुनिश्चित करने के लिए बहुत कम प्रोत्साहन मिलता है कि फ़ाइल अद्यतित है। यह जोड़ें कि विक्रेता आम तौर पर व्यक्तिगत फ़ाइलों के रूप में अपडेट किए गए DLL को सार्वजनिक रूप से जारी नहीं करते हैं, और आप देख सकते हैं कि यहां तक कि साइटें कौन हैं प्रयत्न फ़ाइलों को अद्यतित रखने के लिए बहुत सफल होने की संभावना नहीं है.
आगे की समस्या यह भी है कि DLL आमतौर पर संकुल में एकीकृत होते हैं। एक पैकेज में एक DLL के लिए एक अद्यतन अक्सर एक ही पैकेज में अन्य, संबंधित DLL से अपडेट के साथ होता है, जिसका अर्थ है कि संभावित घटना में भी आपको DLL फ़ाइल तक नहीं मिलती है, आपको संबंधित फ़ाइलें भी नहीं मिलेंगी अद्यतन किया गया.
डाउनलोड किए गए DLL को संक्रमित किया जा सकता है
हालांकि कम आम है, एक संभावित रूप से बहुत खराब समस्या यह है कि DLL आप विक्रेता के अलावा अन्य स्रोतों से डाउनलोड करते हैं, कभी-कभी वायरस या अन्य मैलवेयर से भरा जा सकता है जो आपके पीसी को संक्रमित कर सकते हैं। यह उन साइटों पर विशेष रूप से सच है जो अपनी फ़ाइलों को प्राप्त करने के बारे में बहुत सावधान नहीं हैं। और यह उन साइटों की तरह नहीं है जो अपने जोखिम भरे स्रोतों के बारे में बताने के लिए अपने रास्ते से हटने वाली हैं। वास्तव में डरावना हिस्सा यह है कि यदि आप एक संक्रमित डीएलएल फाइल डाउनलोड करते हैं, तो आप डीएलएल फाइलों की प्रकृति को जोखिम में डालकर देते हैं, जो एक नियमित संक्रमित फाइल की तुलना में गहरी फ़ाइल को प्राप्त कर सकती है।.
यहां अच्छी खबर यह है कि एक अच्छा, वास्तविक समय एंटीवायरस ऐप आमतौर पर इन संक्रमित डीएलएल फ़ाइलों का पता लगा सकता है इससे पहले कि वे वास्तव में आपके सिस्टम में सहेजे जाते हैं और किसी भी नुकसान को करने से रोकते हैं। फिर भी, आपको याद रखना चाहिए कि एक महान एंटीवायरस प्रोग्राम भी आपको पूर्ण सुरक्षा प्रदान नहीं कर सकता है। यदि आप जोखिम भरी फ़ाइलों को डाउनलोड करने की आदत बनाते हैं, तो यह आपके साथ कुछ बिंदु पर पकड़ बनाने की संभावना है। इन DLL साइट्स से बचना ही सबसे अच्छा है.
वे शायद वैसे भी आपकी समस्या का समाधान नहीं करेंगे
हालांकि यह संभव है कि आपके पीसी पर केवल एक DLL फ़ाइल भ्रष्ट या नष्ट हो गई है, यह अधिक संभावना है कि अन्य DLL या संबंधित ऐप फाइलें भी भ्रष्ट या गायब हैं। आपके द्वारा किसी एक विशेष फ़ाइल के बारे में त्रुटि प्राप्त करने का कारण यह है कि क्रैश होने से पहले यह एक ऐसी त्रुटि है जो ऐप से पहले सामने आई थी और आपको बस शेष के बारे में सूचित नहीं किया जा रहा है। यह सच है कोई बात नहीं समस्या का कारण हो सकता है.
DLL क्यों गायब या भ्रष्ट हो सकता है? यह हो सकता है कि किसी अन्य गलत ऐप या अपडेट ने फ़ाइल को बदलने और विफल करने की कोशिश की, या इसे एक आउट-ऑफ-डेट कॉपी के साथ बदल दिया। यह आपके मुख्य ऐप की स्थापना में या .NET जैसे पैकेज में गलती हो सकती है। यह भी हो सकता है कि आपको अपनी हार्ड डिस्क पर एक और समस्या-जैसे बुरे क्षेत्र हों, जो फ़ाइल को सही तरीके से लोड होने से रोक रहे हों.
मैं अपनी DLL त्रुटि कैसे ठीक कर सकता हूं?
यह सुनिश्चित करने का एकमात्र तरीका है कि आपको एक स्थिर, अप-टू-डेट और स्वच्छ डीएलएल प्राप्त करना है, इसे उस स्रोत के माध्यम से प्राप्त करना है जिससे यह उत्पन्न हुआ है। आमतौर पर, वह स्रोत होगा:
- आपका विंडोज इंस्टॉलेशन मीडिया. यह संभावना नहीं है कि आप अपने स्थापना मीडिया से केवल एक DLL फ़ाइल की प्रतिलिपि बना पाएंगे, लेकिन आपके पास Windows को पुनः बनाने के रूप में कुछ करने से पहले प्रयास करने का एक त्वरित विकल्प है। आप विंडोज रिसोर्स प्रोटेक्शन टूल (जिसे अक्सर सिस्टम फाइल चेकर या SFC के रूप में संदर्भित किया जाता है) का उपयोग कर सकते हैं, जो विंडोज में भ्रष्ट या गायब सिस्टम फाइल्स के लिए स्कैन और फिक्स करेगा। टूल चलाते समय आपको अपना इंस्टॉलेशन मीडिया काम में लेना चाहिए, बस अगर किसी फाइल को वहां से कॉपी करना हो तो। (यदि आपके पास इंस्टॉलेशन डिस्क नहीं है, तो आप यहां एक डाउनलोड कर सकते हैं।)
- Microsoft .NET फ्रेमवर्क पैकेज. .NET के कई संस्करण स्वचालित रूप से विंडोज के साथ इंस्टॉल किए जाते हैं, और कई ऐप उन पैकेजों से भी फाइल इंस्टॉल करते हैं। आप हमारे लेख को .NET फ्रेमवर्क के बारे में पढ़ सकते हैं, जिसमें संबंधित समस्याओं को खोजने और मरम्मत करने के लिए कुछ सलाह भी है.
- विभिन्न Microsoft Visual C ++ Redistributable पैकेज. आपके द्वारा उपयोग किए जाने वाले एप्लिकेशन के आधार पर, आपके पीसी पर C ++ Redistributable के कई संस्करण हो सकते हैं। यह कभी-कभी मुश्किल हो सकता है कि कौन सा अपराधी है, लेकिन शुरुआत करने के लिए एक अच्छी जगह C ++ Redistributables पर हमारा लेख है, जिसमें कई समस्या निवारण चरण और लिंक भी हैं जहां आप Microsoft से सीधे अद्यतित संस्करणों को डाउनलोड कर सकते हैं।.
- DLL के साथ जो ऐप आया था. अगर DLL एक अलग पैकेज का हिस्सा होने के बजाय ऐप के साथ इंस्टॉल किया गया है, तो आपका सबसे अच्छा शर्त सिर्फ ऐप को रीइंस्टॉल करना है। कुछ एप्लिकेशन आपको पूर्ण पुनर्स्थापना के बजाय मरम्मत करने की अनुमति देते हैं। या तो विकल्प काम करना चाहिए, क्योंकि एक स्थापना आमतौर पर स्थापना फ़ोल्डर में लापता फ़ाइलों की तलाश करती है.
यदि वह सब विफल हो जाता है, तो आप ऐप विक्रेता से संपर्क कर सकते हैं और व्यक्तिगत DLL फ़ाइल की एक प्रति का अनुरोध कर सकते हैं। कुछ कंपनियां इस अनुरोध के लिए खुली हैं; कुछ नहीं हैं। यदि आप एक ऐसी कंपनी में भाग लेते हैं, जो अलग-अलग फाइलें उपलब्ध नहीं कराएगी, तो वे कम से कम आपकी समस्या के समाधान के लिए अन्य सुझाव देने में सक्षम हो सकते हैं.