मेरे पास एक प्रकार की लाइब्रेरी वाला वीसी ++ COM घटक है।इंटरऑप असेंबली में नाम गलत पूंजीकरण
[
object,
uuid(ActualUuidHere),
dual,
nonextensible,
oleautomation,
hidden,
helpstring(ActualHelpStringHere)
]
interface IWorkflow : IDispatch
{
//irrelevant properties here
}
[
uuid(ActualClassIdHere),
noncreatable
]
coclass Workflow {
[default] interface IWorkflow;
};
आदेश मैं सी # परियोजना के लिए एक संदर्भ जोड़ने के एक सी # आवेदन और एक इंटरॉप विधानसभा से घटक का उपभोग करने में उत्पन्न होता है: इस घटक के प्रकार के पुस्तकालय एक अंतरफलक और एक सह वर्ग की घोषणा की।
विजुअल स्टूडियो 2003 के ऑब्जेक्ट ब्राउज़र मैं देख रहा हूँ इंटरॉप जिसमें में:
public abstract interface IWorkflow;
public abstract interface workflow : IWorkflow;
public class workflowClass : System.Object;
यह स्पष्ट है कि कि किसी कारण से वर्ग और इंटरफ़ेस का नाम पूंजीकरण में मतभेद है। यह उसी प्रकार की लाइब्रेरी में घोषित अन्य 20+ इंटरफेस के लिए नहीं होता है - उनके लिए ISomething
Something
और SomethingClass
से मेल खाता है।
मैंने परियोजना की .idl फ़ाइलों को देखा है - पहचानकर्ता Workflow
कहीं और नहीं उपयोग किया जाता है।
इस अजीब व्यवहार का कारण क्या है और यह कैसे काम किया जा सकता है?
प्रोजेक्ट में सभी आईडीएल फाइलों के माध्यम से देखा - नाम कहीं और नहीं उपयोग किया जाता है। – sharptooth
धन्यवाद। मुझे यह समस्या हो रही थी, और आपके समाधान ने इसे ठीक कर दिया। – Grokys