2010-02-03 10 views
5

This page आयरन रूबी सहायता वेबसाइट पर कुछ सुप्रसिद्ध असेंबली जैसे सिस्टम की आवश्यकता होती है, जैसे सिस्टम सिस्टम.इंडो.फॉर्म को पूरे 'एएच-आओ-ऑन-गिमेम-ए-ब्रेक-इन-क्रैक-आउट-क्रिम -यह-गंभीर नहीं हो सकता 'असेंबली का मजबूत नाम।IronRuby - मजबूत नाम के बिना .NET असेंबली की आवश्यकता कैसे है?

डॉक्स में यह इस का कहना है:

>>> require "System.Windows.Forms" 
=> true 

लेकिन जब मैं एक ही कोशिश 'require', मैं इस मिल:

>>> require "System.Windows.Forms" 
IronRuby.Libraries:0:in 'require': no such file to load -- System.Windows.Forms (LoadError) 
     from :0:in 'Initialize##1' 

क्या मैं गलत कर रहा हो सकता है? क्या यह एक सेटअप समस्या हो सकती है? मैं इसे "लोड पथ पर libs निर्देशिका" नहीं देख सकता जो दस्तावेज़ीकरण में उल्लिखित है। क्या दस्तावेज गलत है?

धन्यवाद।

उत्तर

2

अच्छा, यह एक सेटअप समस्या थी - IronRuby डाउनलोड में ir.exe की दो प्रतियां थीं, और मैं गलत का उपयोग कर रहा था।

7

जिस तरह से यह काम करता है क्योंकि IronRuby लोगों ने रैपर स्क्रिप्ट का एक गुच्छा लिखा है।

<your ironruby install path>\lib\ironruby में देखो

और आप देखेंगे System.Windows.Forms.rb, System.Drawing.rb आदि

जब आप require 'System.Windows.Forms' कि IronRuby कि rb फ़ाइल पाता है और इसे चलाता है तो क्या होता है। उस फ़ाइल के अंदर कोड सिर्फ आपके लिए पूर्ण मजबूत नाम की आवश्यकता है।

  1. dll का पूर्ण पथ की आवश्यकता होती है (जैसे c:\program files\whatever\whatever\blah.dll)

  2. आवश्यकता होती है:

    आप अन्य dll है कि वे के लिए रैपर नहीं लिखा है लोड करना चाहते हैं, तो आप 3 विकल्प हैं मजबूत नाम (यह केवल काम करता है अगर यह GAC में है या कहीं और IronRuby dll में के पा सकते हैं)

  3. उपयोग load_assembly - यह सबसे सुविधाजनक है, लेकिन यह IIRCमें dll लोड करता हैसंदर्भ, Load संदर्भ नहीं।
    आप समझ में नहीं आता है, तो यह है कि क्या मतलब है, तो मूल रूप से यह परीक्षण में ठीक है, लेकिन उत्पादन में यह मत करो :-)

+1

धन्यवाद - यह देखने के लिए कैसे IronRuby लोक इस कार्यान्वित दिलचस्प है। – mackenir

+0

मुझे एक अलग समस्या थी, और 'load_assembly' का उपयोग करके इसे ठीक किया गया। 'आवश्यकता 'और' load_assembly' के बीच अंतरों पर मुझे और जानकारी कहां मिल सकती है? –

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