सबसे अधिक संभावना है कि यह qsqlpsql.dll
. को गतिशील रूप से लिंक करने में विफल हो रहा है फ़ाइल जब यह LoadLibrary
का आह्वान करती है आपके प्रोग्राम के अनुरोध के बाद उस पर ड्राइवर। LoadLibrary
जब लक्ष्य डीएलएल गायब होता है तो वही त्रुटि कोड देता है जब डीएलएल में से एक लक्ष्य डीएलएल पर निर्भर करता है या लोड नहीं किया जा सकता है . तो क्यूटी को संभवतः "लाइब्रेरी नहीं मिली" त्रुटि मिलती है और मानती है कि "ओह, पीजी ड्राइवर इस क्यूटी बिल्ड में नहीं होना चाहिए", जहां वास्तव में यह मौजूद है और निर्भरता मुद्दों, पुस्तकालय संगतता समस्याओं आदि के कारण लोड करने में विफल रहा है।पी>
यह निर्धारित करने के लिए कि यह लोड करने में विफल क्यों हो रहा है, आप फ्रैंक ओस्टरफेल्ड के सुझाव के अनुसार निर्भरता वॉकर (depends.exe
)
. यदि आप 64-बिट मशीन पर 32-बिट कोड संकलित कर रहे हैं, तो आप 32-बिट निर्भरता वॉकर प्राप्त करना चाहते हैं।
इसके विफल होने की काफी संभावना है क्योंकि qsqlpsql.dll
की निर्भरता है अनुपलब्ध - या तो libpq.dll
, या पुस्तकालयों में से एक जो libpq
. है निर्माण की आवश्यकता है। निर्भरता वॉकर इसे अलग करने में मदद करेगा। यह भी संभव है कि आप 64-बिट libpq.dll
लोड करने का प्रयास कर रहे हों 32-बिट प्रोग्राम में, या इसके विपरीत।
आपको अपने प्रोग्राम को प्रोसेस मॉनिटर ट्रेसिंग के साथ चलाने के लिए जानकारीपूर्ण भी मिल सकता है। यह अन्य बातों के अलावा, किन फ़ाइलों को खोलने / जाँचने का प्रयास करता है, इसके बारे में बहुत सारी जानकारी देगा, और अनपेक्षित PATH
जैसी चीज़ों को ट्रैक करने में मदद कर सकता है मुद्दे।
यदि आप अभी भी अटके हुए हैं, तो हमेशा डिबगर के साथ आगे बढ़ने का विकल्प होता है।