2011-09-27 11 views
7

पर लापता डीएलएस मेरे पास एक .NET एप्लिकेशन है जो कुछ vC++ संकलित Win32 dlls का उपयोग करता है। यह 32 बिट विन पर बहुत अच्छा काम करता है, लेकिन 64 बिट पर एक समस्या है: "DLL 'xyz' लोड करने में असमर्थ: निर्दिष्ट मॉड्यूल नहीं मिला। (HRESULT: 0x8007007E से अपवाद)"64 बिट विन

निर्भरता वॉकर का उपयोग करना मैंने पाया कि यह निम्नलिखित डीएलएस को याद करता है: एमएसवीसीपी 100. डीएलएल, एमएसवीसीआर 100. डीएलएल, जीडीआईपीएल.एलएलएल, जीपीएसवीसी.डीएलएल, आईईएसएचआईएमएस.डीएलएल

मैं उन्हें अपने 64 बिट विन में कैसे स्थापित कर सकता हूं? मुझे उन्हें कहां रखना चाहिए? क्या मुझे उन्हें पंजीकृत करना चाहिए? या ...?

नोट, मेरी परियोजना x86 प्लेटफ़ॉर्म के लिए संकलित की गई है और यह 32 बिट ऐप के रूप में प्रोग्राम फ़ाइलें (x86) फ़ोल्डर से चलाया गया है। मेरे डीएलएस विजुअल स्टूडियो 2010 में विजुअल सी ++ के माध्यम से Win32 के रूप में काम कर रहे हैं।

ध्यान दें कि कुछ अन्य कारणों से मेरे डीएलएस के 64 संस्करण को प्राप्त करना असंभव है, इसलिए यह समाधान नहीं होगा।

धन्यवाद!

+0

IESHIMS मैंने कभी भी संकलित हर परियोजना पर गायब हो गया है। कोई विचार क्यों नहीं। – meawoppl

उत्तर

10

पूरी प्रक्रिया 32 या 64 बिट होनी चाहिए। यदि आप 64 बिट में सभी निर्भरता पुस्तकालयों को संकलित नहीं कर सकते हैं, तो आपको 32 बिट में .NET प्रोजेक्ट चलाने की आवश्यकता है। ऐसा करने के लिए, x86 कॉन्फ़िगरेशन बनाएं (डिफ़ॉल्ट कोई भी CPU है) और इस कॉन्फ़िगरेशन में .NET प्रोजेक्ट बनाएं।

आपको अपने कंप्यूटर में, सही स्थिति के साथ, गंतव्य कंप्यूटर पर वीसी ++ 2010 पुनर्वितरण योग्य पैकेज स्थापित करने की आवश्यकता है - x86। यह पैकेज माइक्रोसॉफ्ट वेब साइट से डाउनलोड किया जा सकता है।

यदि आपके प्रोग्राम में इंस्टॉलेशन पैकेज है, तो वीसी ++ पुनर्वितरण योग्य इसे एकल फ़ाइल के रूप में या मर्ज मॉड्यूल के रूप में जोड़ा जाना चाहिए।

+0

सबकुछ x86 के रूप में बनाया गया है, यह कोई समस्या नहीं है। समस्याएं ये डीएलएस – Tom

+0

धन्यवाद हैं। वीसी ++ 2010 पुनर्वितरण योग्य पैकेज मदद की। – Tom

2

के रूप में एलेक्स फार्बर बताया गया है, आप लक्षित मशीन पर कुछ क्रम DLLs स्थापित करने के लिए है:

  • सही संस्करण, यहां 4.0 के साथ The .NET runtime,
  • Visual Studio redistributable package (मैं इस एक के बारे में सुनिश्चित नहीं कर रहा हूँ , यह केवल सी ++ अनुप्रयोगों के लिए होना चाहिए, लेकिन अगर .NET पर्याप्त नहीं है तो कोशिश कर सकते हैं)
संबंधित मुद्दे