2012-10-11 13 views
5

में MSXML2.DOMDocument40 में बदल गया है। मैंने हाल ही में किसी कारण से "MSXML2.DOMDocument" को "MSXML2.DOMDocument40" में बदल दिया है। यह मेरे कंप्यूटर में काम करता है। लेकिन वही कोड किसी अन्य कंप्यूटर में काम नहीं करता है। कारण क्या हो सकता है? कृपया कुछ उत्तर सुझाएं।वीबीए: MSXML2.DOMDocument मैक्रो

+2

का उपयोग करेंगे "काम नहीं करता" जैसा दिखता है? –

+0

@TimWilliams: मुझे गलत पोस्ट के लिए खेद है। यह वास्तव में ठीक काम कर रहा है। मैं इस पोस्ट को हटाने वाला नहीं हूं क्योंकि नीचे "बैरोक" ने कुछ उपयोगी जानकारी दी है। और मुझे इस वेबसाइट में पोस्ट नहीं मिला है। – user1495475

उत्तर

14

MSXML2.DOMDocument हमेशा MSXML2.DOMDocument30 के लिए समानार्थी है। यह वीबीए (msxml3.dll)

माइक्रोसॉफ्ट अनुशंसा करता है कि डेवलपर्स को अपने अनुप्रयोगों में "माइक्रोसॉफ्ट एक्सएमएल, v6.0" लाइब्रेरी (msxml6.dll) को लक्षित करना चाहिए, "माइक्रोसॉफ्ट एक्सएमएल, v3.0" द्वारा संदर्भित लाइब्रेरी से मेल खाता है। । यह उस पुस्तकालय के संदर्भ को सेट करके और फिर उपयुक्त प्रकारों का उपयोग करके किया जाएगा - उदा। MSXML2.DOMDocument60

यदि v6.0 लाइब्रेरी का उपयोग करना संभव नहीं है तो डेवलपर्स को इसके बजाय "माइक्रोसॉफ्ट एक्सएमएल, v3.0" लाइब्रेरी (msxml3.dll) पर वापस आना चाहिए।

एक्सएमएल लाइब्रेरी के किसी अन्य संस्करण का उपयोग करने की अनुशंसा नहीं की जाती है क्योंकि इस बात की कोई गारंटी नहीं है कि किसी भी सिस्टम पर v6.0 और v3.0 के अलावा कोई भी संस्करण उपलब्ध होगा। MSXML2.DOMDocument40 जिसका उपयोग आपने "माइक्रोसॉफ्ट एक्सएमएल, वी 4.0" लाइब्रेरी (msxml4.dll) से मेल खाता है और यह बहुत संभावना है कि कंप्यूटर जहां यह कोड नहीं चलता है, उस पुस्तकालय में उपलब्ध नहीं है।

पूरी जानकारी के लिए देख http://blogs.msdn.com/b/xmlteam/archive/2006/10/23/using-the-right-version-of-msxml-in-internet-explorer.aspx

संपादित करें: अगर लेट बाइंडिंग का उपयोग कर, आप उचित ProgIDs here पा सकते हैं। DOMDocument60 के लिए, आप CreateObject("Msxml2.DOMDocument.6.0")

+0

: मुझे खेद है कि मेरे कोड में कोई गलती हुई थी। वास्तव में यह ठीक काम करता है, क्या आप अभी भी "MSXML2.DOMDocument40" का उपयोग न करने की सलाह देते हैं? क्योंकि मैं फ़ाइल को अन्य सिस्टम में भी डाल दूंगा। लेकिन जब मैंने किया "msxml3.dll", msxml4.dll, msxml6.dll जैसे सभी dlls के साथ मेरे सिस्टम में खोजें, मैंने इन्हें सी: \ विंडोज फ़ोल्डर में और अन्य फ़ोल्डरों में भी पाया। कृपया सुझाव दें। – user1495475

+0

मैं माइक्रोसॉफ्ट की सिफारिश के साथ जाऊंगा और केवल संस्करण 6.0 (msxml6.dll) का उपयोग करूंगा। यदि यह संभव नहीं था तो मैं संस्करण 3.0 का उपयोग करूंगा। मैं किसी भी परिस्थिति में संस्करण 4.0 या 5.0 का उपयोग नहीं करता – barrowc

संबंधित मुद्दे