2011-08-18 16 views
5

मैं क्लिकऑन के साथ Outlook एड-इन को तैनात करने का प्रयास कर रहा हूं। अद्यतन विकल्पों को सेट करते समय मैंने देखा कि विन फॉर्म प्रोजेक्ट के लिए प्रोजेक्ट में Outlook में जोड़ने के लिए कम विकल्प उपलब्ध हैं। उदाहरण के लिए मैं न्यूनतम आवश्यक संस्करण निर्दिष्ट नहीं कर सकता। ऐसा क्यों है? इसके अलावा, मैं चाहते हैं:आउटलुक ऐड-इन क्लिकऑन अपडेट सेटिंग्स

  1. अगर वह भी एक अद्यतन चाहता है उपयोगकर्ता पूछने के लिए (अगर यह आवश्यक नहीं है) मैनुअल अद्यतन
  2. सक्षम करने के लिए।

1) मैं System.Deployment.Application और CheckForDetailedUpdate() फ़ंक्शन लेकिन उपयोग करने की कोशिश अद्यतन सफल होता है, भले ही यह स्थापित करने में समस्या हैं: यह आउटलुक से गायब हो जाता है मैं अपने प्लगइन को पुनः आरंभ करते हैं, तो अगर मैं पुराने संस्करण नहीं है आउटलुक में फंस जाता है (और अजीब तरीके से व्यवहार करता है) हालांकि यूएनसी पथ के माध्यम से और अपडेट सुझाव देते हैं कि अद्यतन सफलतापूर्वक किया गया है।

2) मैज या मैगेयूआई के साथ जोड़े गए कोई विशेष विकल्प के साथ नियमित रूप से प्रकाशित नहीं होता है, लेकिन ऐड-इन उपयोगकर्ता को पूछे बिना अपडेट लगता है। थोड़ा सा खुलासा करते हुए कि लोग विपरीत करने की कोशिश कर रहे हैं, इसलिए मैं इस तरह से परेशान हूं कि यह डिफ़ॉल्ट रूप से अपडेट के लिए क्यों नहीं संकेत करता है।

मैंने विजुअल स्टूडियो से मैगेयूआई के साथ उत्पन्न मैनिफ़ेस्ट को संपादित करने का प्रयास किया लेकिन यह एप्लिकेशन मैनिफेस्ट के लिए अमान्य एक्सएमएल उत्पन्न करता है (?! - यह "असेंबली एड्रेसिटी" नोड को "आश्रित एस्पेरियल्स" नोड में याद करता है), और जब मैं मूल मेनिफेस्ट से गायब नोड्स जोड़ता हूं वीएस (और अद्यतन करें और इसे बाद में साइन करें), स्थापना असेंबली हैश के बारे में शिकायत अवैध है।

मैं कहा गया आवश्यकताओं के साथ Outlook एड-इन कैसे तैनात कर सकता हूं?

उत्तर

6

वीएसटीओ अनुप्रयोग (कार्यालय एड-इन्स) केवल क्लिकऑन के कुछ बिट्स का समर्थन करते हैं। आप कोड जोड़ने और प्रोग्रामेटिक अपडेट करने का प्रयास कर सकते हैं, लेकिन माइक्रोसॉफ्ट में क्लिकऑन लीड ने कहा कि यह वास्तव में इस्तेमाल करने का इरादा नहीं है, और इसके कुछ हिस्सों में काम नहीं हो सकता है। (नहीं, बिल्कुल किन हिस्सों पर कोई विवरण नहीं - आपको थोड़ा परीक्षण करना होगा & त्रुटि)।

यह भी ध्यान दें कि एक vsto परिनियोजन जिस तरह से काम करता है और चलता है वह यह है: आउटलुक vsto ऐप को जांचता है, और डीएलएल को छाया स्थान पर कॉपी करता है और Outlook के साथ लोड करता है। जब आप vsto ऐप को अपडेट करते हैं, तो यह इसे कैश के बाद क्लिक में अपडेट करता है, लेकिन दृष्टिकोण में नहीं। जब आप दृष्टिकोण को बंद करते हैं और इसे फिर से खोलते हैं, तो यह नया संस्करण पाता है, इसे छाया स्थान पर कॉपी करता है, और इसे लोड करता है। आप स्वयं को vsto बिट को पुनरारंभ नहीं कर सकते हैं और यह कुछ भी कर सकते हैं। उपयोगकर्ता को Outlook को पुनरारंभ करना होगा।

यह उन कारणों में से एक है जो Office अनुप्रयोग प्रारंभ करते समय अपडेट किए जाते हैं। यह नए संस्करण की तलाश करता है, यदि आवश्यक हो तो अपडेट, और फिर इसे Outlook में लोड करता है और इसका उपयोग करता है।

यह कहकर कि, आप जो चाहते हैं उसे पूरा करने का एक और तरीका एक विंडोज़ फॉर्म ऐप लिखना है जो आपके ऐड-इन को अपडेट करेगा। मूल रूप से एक Winforms ऐप को तैनात करें जो क्लिकऑस के माध्यम से vsto एप्लिकेशन को आमंत्रित करने के अलावा पहली बार कुछ भी नहीं दिखाता है (process.start आपका मित्र है)। फिर आप विज़ुअल ऐड-इन को Winforms ऐप को देख सकते हैं कि कोई अपडेट है या नहीं, और यदि वहां है, तो यह जीत फ़ॉर्म ऐप के अपडेट के लिए संकेत दे सकता है, और उसके बाद Office एड-इन को अनइंस्टॉल और पुनर्स्थापित कर सकता है या इसे अपडेट कर सकता है ।

+1

लगता है कि रिबन भागों थोड़ा समस्याग्रस्त हैं। और शायद ही कभी एकमात्र। आपके उत्तर के लिए धन्यवाद, कम से कम मुझे पता है कि मुझे ऐसा करने की कोशिश करने में और अधिक समय बर्बाद नहीं करना चाहिए जो नहीं किया जाना चाहिए। – Damir

+0

@RobinDotNet क्या यह उत्तर आज भी वैध है, कुछ 5 साल? मैंने एक एक्सेल ऐड विकसित किया है (एफ़टीपी के माध्यम से प्रकाशित एक वीएसटीओ आधारित एप्लिकेशन और HTTP के माध्यम से स्थापित), एक्सेल के स्टार्टअप पर स्वचालित अपडेट प्रक्रिया ठीक काम करती है।हालांकि, मैं एक ऐसी विधि की तलाश में था जो उपयोगकर्ता को अद्यतनों की जांच करने और सरल बटन के माध्यम से उन्हें लागू करने की अनुमति देता है, एड इन इंटरफ़ेस के भीतर क्लिक करें। इसे हासिल करने के लिए अभी भी संभव नहीं है? धन्यवाद। –