2009-11-20 17 views
14

मुझे Vista के बाद पता है, कि सी # सीधे यूआई फॉर्म को विंडोज सेवा पर नहीं लगा सकता है। यह माइक्रोसॉफ्ट साइट पर कहा गया था।जीयूआई और विंडोज़ सेवा संचार

इस संबंध में मेरा प्रश्न यह है: "यूआई से सेवा के लिए संचार का सबसे अच्छा तरीका क्या है?"

मैंने रिमोटिंग, वेब सेवाओं और प्रत्यक्ष टीसीपी के बारे में सुना है। क्या अन्य विधियां हैं? वे पहले उल्लिखित तरीकों के खिलाफ कैसे रैंक करते हैं? वे कितने जटिल हैं?

मेरा आवेदन इंट्रानेट उपयोग के लिए है, इंटरनेट नहीं। माइक्रोसॉफ्ट मंच दोनों तरफ होगा, इसलिए अंतःक्रियाशीलता एक कारक नहीं है, लेकिन गति है। मेरा मतलब है कि मैं नेटवर्क पर संभव सबसे छोटा पैकेट भरना चाहता हूं।

TIA

उत्तर

22

यदि आप .NET के साथ विकास करने जा रहे हैं, तो अपने इंटरप्रोसेस संचार के लिए WCF का उपयोग करें। डब्ल्यूसीएफ विकास को बहुत सरल बनाता है क्योंकि एक विशिष्ट संचार तंत्र (उदा।, सॉकेट, पाइप इत्यादि) से जुड़ी जटिलताएं एक एकीकृत प्रोग्रामिंग मॉडल के पीछे सारणीबद्ध होती हैं। इस प्रकार, इससे कोई फर्क नहीं पड़ता कि आप अपने परिवहन तंत्र के लिए http, tcp, या नामित पाइप का उपयोग करना चुनते हैं, प्रोग्रामिंग मॉडल वही है।

मैं डब्ल्यूसीएफ की सभी चीजों के लिए जुवल लोवी की पुस्तक Programming WCF Services की अत्यधिक अनुशंसा करता हूं। आप मुफ्त डब्ल्यूसीएफ कोड नमूने के लिए, अपनी वेबसाइट, IDesign.net पर भी जा सकते हैं।

डब्ल्यूसीएफ के एक सिंहावलोकन के लिए, यह मुफ्त video dnrTV पर देखें। इसमें डब्ल्यूसीएफ के उद्देश्य को शामिल किया गया है और कुछ आसान-से-पालन उदाहरणों के माध्यम से डब्ल्यूसीएफ प्रोग्रामिंग का प्रदर्शन करता है।

यदि आपने पहले से ही अपनी विंडोज सेवा नहीं बनाई है लेकिन सी # में ऐसा करने की योजना है, तो आप चरण-दर-चरण here का पालन कर सकते हैं।

1

वहाँ प्रक्रियाओं के बीच संवाद करने के लिए कई तरीके हैं - नामित पाइप, mailslots, स्मृति मैप की गई फ़ाइलें, सॉकेट, ActiveX/COM ऑब्जेक्ट, बस कुछ ही नाम है। यह वास्तव में उन तकनीकों को उबालता है जिनके साथ आप परिचित/आरामदायक हैं।