मैं समझता हूं कि CoCreateInstance दिए गए क्लास आईडी के लिए COM सर्वर पाता है, उस आईडी के लिए ऑब्जेक्ट इंस्टेंस बनाता है और उस ऑब्जेक्ट इंस्टेंस से इंटरफ़ेस पुनर्प्राप्त करता है। CoGetClassObject() क्लास आईडी के लिए COM सर्वर पाता है, उस क्लास आईडी के लिए क्लास फैक्ट्री का एक उदाहरण बनाता है और उस क्लास फ़ैक्टरी इंटरफ़ेस को पुनर्प्राप्त करता है जिसका उपयोग वास्तविक ऑब्जेक्ट्स बनाने के लिए किया जा सकता है।उसी मशीन पर ऑब्जेक्ट्स बनाते समय CoCreateInstance() और CoGetClassObject() के बीच क्या अंतर है?
उसी मशीन पर ऑब्जेक्ट्स बनाने के लिए उपयोग किए जाने पर इन कार्यों को और कैसे भिन्न किया जाता है? क्या वे वैसे ही काम करते हैं लेकिन एक ही COM सर्वर में केवल अलग-अलग कोड डालने का कारण बनता है?
मैंने इसे पढ़ लिया है, लेकिन मुझे CoGetClassObject() को संभावित रूप से तेज़ होने के अलावा कोई भी लाभ नहीं दिख रहा है और क्लास फैक्ट्री ऑब्जेक्ट CreateInstance() कॉल के बीच राज्य को बनाए रखने में सक्षम है। – sharptooth
@ शार्पतोथ, यह बहुत अधिक है। इस पर बहुत अधिक लाभ नहीं है, यही कारण है कि आप इसे शायद ही कभी इस्तेमाल करते हैं। – JaredPar
क्या कोई मौका है कि निर्भरता की तलाश करने के क्रम में कुछ अन्य सूक्ष्म अंतर है? क्या ये फ़ंक्शन एक ही काम करते हैं लेकिन एक ही COM सर्वर में बस अलग कोड को कॉल करते हैं? – sharptooth