2009-01-27 9 views
6

से एक दूरस्थ COM + ServicedComponent को कॉल करना मेरे पास एक COM + सर्वर अनुप्रयोग में एक सर्विस्ड घटक स्थापित है। मैं रिमोट क्लाइंट से एक उदाहरण बनाना चाहता हूं। क्लाइंट को सर्वर मशीन के नाम को गतिशील रूप से निर्दिष्ट करने में सक्षम होना चाहिए। मैं यह कैसे करु?एक सी # क्लाइंट

मैं उत्प्रेरक उपयोग करने की कोशिश:

  (XSLTransComponent.XSLTransformer)Activator.GetObject(
         typeof(XSLTransComponent.XSLTransformer), 
         serverName 
         ); 

लेकिन मैं इस मिल:

System.Runtime.Remoting.RemotingException: चैनल सिंक बनाने यूआरएल 'सर्वर' से कनेक्ट करने नहीं कर सकता। एक उपयुक्त चैनल शायद पंजीकृत नहीं किया गया है। System.Runtime.Remoting.RemotingServices.Unmarshal पर (प्रकार classToProxy, स्ट्रिंग यूआरएल, वस्तु डेटा)

मैं एक चैनल रजिस्टर की जरूरत है? यदि हां, तो कैसे?

मार्शल का उपयोग करना एक और विचार है। बाइंडोमोनीकर, लेकिन मैं सर्वर एक्स पर COM + पर होस्ट किए गए रिमोट ऑब्जेक्ट के लिए एक मोनिकर कैसे निर्दिष्ट करूं?

उत्तर

3

यूरेका! यह काम करता है:

string serverName = serverTextBox.Text; 
Type remote = Type.GetTypeFromProgID("XSLTransComponent.XSLTransformer", serverName); 
return (XSLTransComponent.XSLTransformer)Activator.CreateInstance(remote); 

this question

के लिए धन्यवाद
संबंधित मुद्दे