2008-09-16 23 views
5

से डीएलआर का उपयोग करना क्या प्रबंधित कोड, विशेष रूप से IronRuby या IronPython को अनियंत्रित कोड जैसे C++ या डेल्फी से कॉल करना संभव है?अप्रबंधित कोड

उदाहरण के लिए, हमारे पास डेल्फी में लिखा गया एक एप्लीकेशन है जिसे सी # .NET में स्थानांतरित किया जा रहा है। हम वीबीएससीआरआईपीटी को बदलने के लिए हमारे नए एप्लिकेशन में रूबी या पायथन स्क्रीप्टिंग प्रदान करना चाहते हैं। हालांकि, हमें पुराने डेल्फी आवेदन में रुबी/पायथन स्क्रीप्टिंग प्रदान करने की आवश्यकता होगी। क्या डेल्फी कोड से IronRuby/IronPython द्वारा प्रदान किए गए प्रबंधित डीएलएस का उपयोग करना संभव है?

उत्तर

8

हां। Win32 उदाहरण के लिए डेल्फी उदाहरण: http://interop.managed-vcl.com/
दिखाता है कि सी # के साथ-साथ डेल्फी से डेल्फी.NET असेंबली Win32 के लिए कैसे उपयोग करें।

2

हां। Com Callable Wrappers का उपयोग करना संभव है। असल में आप अपने .NET कक्षाओं को अपने Win32 कोड (डेल्फी या सी ++) से COM/ActiveX के माध्यम से कॉल करने के लिए सक्षम कर रहे हैं।

6

अप्रबंधित कोड में सीएलआर या डीएलआर होस्ट करना संभव है क्योंकि यह एक COM घटक है। उस बिंदु से आप प्रबंधित असेंबली लोड कर सकते हैं जिनके साथ आपको बातचीत करने की आवश्यकता है।

MSDN से: Hosting the Common Language Runtime

0

क्या आपने RemObjects से Hydra देखा है? मुझे इसके साथ कोई अनुभव नहीं है, लेकिन परिचय से, यह प्रासंगिक दिखता है।

3

इसके बजाय सीपीथॉन क्यों एम्बेड नहीं करें, जिसमें एक एपीआई है जिसे सीधे सी/सी ++ से उपयोग किया जाना है। आप कई भाषा लाभ खो देते हैं लेकिन शायद सादगी प्राप्त करते हैं।

2

मैं Unmanaged Exports का उपयोग सी # में आयरनपीथॉन स्क्रिप्ट इंजन में इंटरफ़ेस बनाने के लिए करता हूं। सावधान रहें जब आप Win32 डेल्फी से .NET कोड का उपयोग करते हैं - आपको फ़्लोटिंग पॉइंट अपवाद व्यवहार को बदलने के लिए Set8087CW($133F); का उपयोग करना होगा।

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

  • कोई संबंधित समस्या नहीं^_^