मेरे पास सी # में लिखा गया एक वर्ग है जो एक COM घटक के चारों ओर एक रैपर के रूप में कार्य कर रहा है। COM घटक प्रारंभिक बाध्य है और आरसीडब्ल्यू विजुअल स्टूडियो द्वारा उत्पन्न किया गया है। क्या मुझे COM संदर्भ को साफ करने के लिए अपने रैपर वर्ग में एक निपटान पैटर्न लागू करना चाहिए, या क्या मुझे बस जीसी को इसे संभालना चाहिए, क्योंकि इसमें पहले से ही आरसीडब्ल्यू है?क्या सी # के माध्यम से एक COM घटक को कॉल करने वाला एक रैपर क्लास निपटान पैटर्न को लागू करने की आवश्यकता है?
5
A
उत्तर
4
निपटान को लागू करने के लिए शायद ही कभी की आवश्यकता है लेकिन ऐसा करने के अक्सर अच्छे कारण होते हैं।
यदि COM ऑब्जेक्ट एक महत्वपूर्ण संसाधन का प्रतिनिधित्व करता है जिसे जल्दी से रिलीज़ करने की आवश्यकता है तो यह निपटान को लागू करने का एक अच्छा कारण हो सकता है।
अपने निपटाने विधि में आप कर सकते हैं: -
System.Runtime.InteropServices.Marshal.ReleaseComObject(myRCW);
इसलिए निपटाने अपने वर्ग COM वस्तु तुरंत जारी करेंगे।
संबंधित मुद्दे
- 1. मुझे मार्शल को कॉल करने की आवश्यकता है। सी #
- 2. सी # में "प्रो से बाहर" COM सर्वर को लागू करने के लिए मुझे क्या करने की आवश्यकता है?
- 3. क्या मुझे वास्तव में प्रत्येक प्रिंसिपल पर निपटान() को कॉल करने की आवश्यकता है?
- 4. क्या एसकएलट्रांसेक्शन को निपटान करने की आवश्यकता है?
- 5. क्या मुझे प्रबंधित वस्तुओं पर निपटान() को कॉल करने की आवश्यकता है?
- 6. एक संग्रहीत प्रक्रिया को कॉल करने वाला LINQ धीमा है
- 7. क्या एक (.net) COM + असेंबली को GAC में स्थापित करने की आवश्यकता है?
- 8. क्या मुझे घटनाओं को अपनाने के लिए निपटान करने की आवश्यकता है?
- 9. क्या एक COM इंटरऑप ISTream के लिए एक रैपर वर्ग पहले से मौजूद है?
- 10. क्या मुझे कार्य का निपटान करने की आवश्यकता है?
- 11. "रैपर विधि को लागू करने" का क्या अर्थ है?
- 12. सी # - एक COM + घटक के गुणों को पुनर्प्राप्त करें?
- 13. सी # में, क्या आपको बेस कन्स्ट्रक्टर को कॉल करने की आवश्यकता है?
- 14. सी #: दो इंटरफेस को लागू करने वाले तर्कों की आवश्यकता वाले कार्यों के लिए पसंदीदा पैटर्न
- 15. ProcessMessages को कॉल करने की आवश्यकता से बचें
- 16. क्या मुझे ग्राफिक्स को कॉल करने की आवश्यकता है। प्रदर्शन()?
- 17. क्या मुझे मैन्युअल रीसेट इवेंट पर बंद() को कॉल करने की आवश्यकता है?
- 18. इंटरफ़ेस जिसके लिए विशेषता को लागू करने की आवश्यकता है
- 19. क्या मुझे इसका उपयोग करने से पहले MessageDigest.reset() को कॉल करने की आवश्यकता है?
- 20. इंटरफेस को लागू करने के लिए विशिष्ट पैटर्न का उपयोग
- 21. ग्रहण और सी/सी ++ - क्या मुझे एक कंपाइलर को अलग से स्थापित करने की आवश्यकता है?
- 22. सी # .Net4: उचित रूप से निपटान (गतिशील) COM ऑब्जेक्ट्स
- 23. कक्षाओं के लिए सी # में एक अच्छा डिजाइन पैटर्न क्या है जो अन्य वर्गों को संदर्भित करने की आवश्यकता है?
- 24. पर्यवेक्षकों को सूचित करने से पहले मुझे सेट चेंज को कॉल करने की आवश्यकता क्यों है?
- 25. क्या SqlCommandBuilder.GetUpdateCommand() को SqlDataAdpater.Update() का उपयोग करने से पहले कॉल करने की आवश्यकता है?
- 26. सीरियल COM पोर्ट का उपयोग करने वाला यूएसबी क्लास क्या करता है?
- 27. detoured फ़ंक्शन से मूल फ़ंक्शन को कॉल करने की आवश्यकता
- 28. एक COM ऑब्जेक्ट को कॉल करने के लिए सादे सी में IDISpatch का उपयोग कैसे करें
- 29. एक आईडीस्पोजेबल पैटर्न में बेस क्लास व्युत्पन्न कक्षाओं को अपने डिस्पोजेड ध्वज को साझा करने की अनुमति देनी चाहिए?
- 30. क्या विंडोज/सी # विकास के लिए एक एम्बेड करने योग्य वेबकिट घटक है?
इससे मुझे आश्चर्य होता है कि क्यों आरसीडब्ल्यू निपटान पैटर्न को लागू नहीं करता है, ऐसा लगता है कि यह सही काम है। – vmb100