C # के साथ ArcGIS कस्टम सुविधाएँ लागू करें?


11

क्या .NET में कस्टम सुविधाओं को लागू करना संभव है ?

यदि हां, तो कैसे?

मुझे संदेह है कि समस्या .NET के साथ COM एकत्रीकरण करने में सक्षम है , लेकिन मुझे उस पर कुछ भी नहीं मिल रहा है ...

किसी को पता है कि क्या यह संभव है एक बनाने के लिए क्रम COM। NET वर्ग के लिए COM कॉल करने योग्य आवरण जो COM_INTERFACE_ENTRY_AGGREGATE_BLIND का समर्थन करता है?


क्या आप रन-कॉल करने योग्य आवरण (RCW) के बजाय COM-कॉल करने योग्य आवरण (CCW) नहीं बना रहे होंगे, क्योंकि आप एक प्रबंधित फ्रेम (ArcObjects) में एक प्रबंधित (.NET) सह-वर्ग प्रकाशित करने जा रहे हैं?
स्टैक क्ले

मैंने .NET 4 में नई सुविधाओं को प्रतिबिंबित करने के लिए अपना जवाब अपडेट किया जहां COM एकत्रीकरण को लागू करना वास्तव में संभव है।
पेट्र क्रेब्स

इसके अलावा, जबकि मेरे पास इसके लिए कोई प्रमाण नहीं है, ऐसा लगता है कि प्रबंधित C ++ आपको COM के साथ काम करते समय कुछ और स्वतंत्रता देता है। यदि आपको C # के साथ ऐसा करने का अच्छा तरीका नहीं मिलता है, तो आप कोड के महत्वपूर्ण टुकड़ों के लिए प्रबंधित C ++ पर नज़र डाल सकते हैं।
19

जवाबों:


4

आप .NET 3.5 या उससे कम में शुद्ध COM एकत्रीकरण को लागू करने में असमर्थ होंगे, लेकिन आप .NET 4 में भाग्यशाली हो सकते हैं, जो नए ICustomQueryInterface इंटरफ़ेस को जोड़ता है, जिससे आप इंटरफ़ेस प्रश्नों को ठीक से रीडायरेक्ट कर सकते हैं। शामिल नमूने के साथ अधिक जानकारी कोडप्लेक्स पर पाई जा सकती है ।

मैं C ++ ESRI डॉक्स नमूने के साथ आगे बढ़ने की भी सलाह देता हूं । लिंक 9.0 के लिए है, लेकिन मुझे संदेह है कि यह विशेष नमूना एक बिट नहीं बदला है।


चूंकि यह समस्या मुझे बहुत रुचिकर लगी, इसलिए मैं ESRI के नमूने को .NET 4 C # में पोर्ट करने का प्रयास करूंगा।
पेट्र क्रेब्स

हे पेट्र, कि नमूने के एक सी # संस्करण के लिए बहुत अच्छा होगा! भले ही आर्कगिस 10.0 पीआईए 3.5 के लिए हो, मुझे लगता है कि कस्टम फीचर्स अभी भी 4.0 (?) हो सकते हैं, मैं इस प्रश्न को एक दो दिनों में जोड़ूंगा।
किर्क कुएकेन्डल

@Petr कैसे है कि नमूना आ रहा है;)
blah238

@ blah238: पता चला कि यह इतना आसान नहीं है जितना कि यह दिखता है ..;) वहाँ बहुत अधिक प्रलेखन या नमूने नहीं हैं। मैं इसमें वापस आने की कोशिश करूंगा।
पेट्र क्रेब्स

@Kirk: BTW - .NET 4 का उपयोग करके एक्सटेंशन करने की कोशिश करने पर हम कुछ बहुत ही अजीब मुद्दों में भाग गए - इसलिए मैं इसकी सिफारिश नहीं करूंगा। मैंने अपने कोड का एक टन 3.5sp1 को वापस करने के लिए चीजों को ठीक से काम करने के लिए समाप्त कर दिया, कम से कम 10sp1 के साथ। (एक उदाहरण - कुछ दस्तावेज़ ईवेंट की सदस्यता लेना, और कुछ नहीं करना, आर्केप में राइट क्लिक मेनू को अक्षम कर देगा - भले ही यह पूरी तरह से असंबंधित कार्यक्षमता हो ...)
रीड कोप्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.