2012-03-20 11 views
5

मैं एक सी # अनुप्रयोग (वीएस 2005) के रखरखाव का प्रभारी हूं। यह सी # अनुप्रयोग एक डीएलएल ("mydll.dll") कहते हैं। मुझे प्रश्न में डीएलएल में कुछ बदलाव करने की जरूरत थी।HRESULT से अपवाद: 0x80004002 (E_NOINTERFACE)

मेरे पास "mydll.vbp" फ़ाइल है जो Visual Basic 6.0 में लिखी गई थी। मैंने विजुअल स्टूडियो में अपने बदलाव किए और फिर, विजुअल बेसिक इंटरफेस से "बनाया" mydll "" बनाया।

समस्या यह है कि, अब, हर बार जब मैं उदाहरण में वर्ग "mydll.dll" से debbuger मोड में सी # में कोशिश है, मैं "InvalidCastException"

Unable to cast COM object of type mydll.ClassFrommydll to interface type mydll._ClassFrommydll'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{384FB79F-B636-4655-9441-8222692AB8AE}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

मैं फिर से करने की कोशिश की निम्नलिखित है प्रश्न में डीएलएल को संदर्भित करें ... लेकिन यह कुछ भी नहीं बदलता है।

इससे कोई विचार क्या हो सकता है?

योपू की मदद करने वाले सभी लोगों के लिए बहुत से धन्यवाद। अब इस समस्या के साथ अटक गया है। दबाव महसूस करना शुरू करें ...

+0

किसी और ने इस पर ठोकर के लिए हल किया जा जाएगा, वहाँ में [इस उत्तर] एक महान विवरण (है http://stackoverflow.com/a/16943296/210,780)। – ashes999

उत्तर

0

कक्षा से सभी GUIDs और "ComVisible" विशेषताओं को हटाएं, फिर विधानसभा इन्फ्लो-फ़ाइल में 'असेंबली: कॉमविज़िबल (सत्य)] विशेषता को' सत्य 'पर स्विच करें।

+0

मुझे एक ही समस्या है, ऐसा लगता है कि कुछ भी हल नहीं किया जा रहा है, न ही कोई समझ है ... –

1

निशान मुख्य वर्ग [STAThread] और अपनी समस्या

+0

क्यों? ऐसा लगता है कि इस समस्या को हल नहीं करता है ... –

+1

@ एल। ट्राबाकचिन आप [इस जवाब] में "क्यों" का जवाब पा सकते हैं (http://stackoverflow.com/a/16943296/210780)। – ashes999

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