2010-04-28 15 views
6

मुझे अपने Outlook 2007 ऐड-इन के लिए सेटअप फ़ाइल बनाने में कुछ समस्याएं आ रही हैं।वीएसटीओ (आउटलुक ऐड-इन) सेटअप परिनियोजन (सी #)

समस्या यह है कि ऐड-इन में रजिस्ट्री प्रविष्टि होना आवश्यक है जो मैनिफेस्ट (http://msdn.microsoft.com/en-us/library/bb386106.aspx) का संदर्भ देता है। प्रोजेक्ट एक मैनिफेस्ट फ़ाइल बनाता है जो मेरे बिन \ डीबग फ़ोल्डर में दिखाई देता है। हालांकि, मेरे सेटअप प्रोजेक्ट में, यदि मैं जाता हूं और प्रोजेक्ट आउटपुट जोड़ता हूं, तो मैनिफेस्ट आउटपुट के हिस्से के रूप में कभी सूचीबद्ध नहीं होता है। विचित्र रूप से पर्याप्त, सेटअप एक रजिस्ट्री प्रविष्टि बनाता है जो मेरे बिन \ डीबग फ़ोल्डर में मेरे मैनिफेस्ट को संदर्भित करता है लेकिन यह उपयुक्त नहीं है क्योंकि वह फ़ोल्डर उन मशीनों पर उपलब्ध नहीं है जहां मैं तैनात किया जाएगा।

धन्यवाद।

====================================

उन दिलचस्पी के लिए

, कुछ पृष्ठभूमि मुद्दे।

  1. यदि मैं अपने सेटअप में प्रोजेक्ट आउटपुट का उपयोग करता हूं, तो VSTO ऐड-इन पहली बार ठीक इंस्टॉल करता है। अगर मैं एक ही सेटअप का उपयोग करके अनइंस्टॉल और पुनर्स्थापित करता हूं, तो यह ठीक से इंस्टॉल नहीं होता है। अगर मैं सेटअप को पुनर्निर्माण करता हूं, तो यह फिर से ठीक हो जाता है (दूसरे शब्दों में, यह केवल पहली बार सेटअप चलाए जाने पर स्थापित होता है)।
  2. मैंने सही किया (1) लेकिन मेरे सेटअप प्रोजेक्ट से प्रोजेक्ट आउटपुट को हटाने और इसके बजाय फ़ाइलों को मैन्युअल रूप से जोड़ना (मेरा डीएल + मैनिफेस्ट) और फिर मैनिफेस्ट को इंगित करने के लिए रजिस्ट्री कुंजियों को अपडेट करना। इस बार, मैं उसी सेटअप के साथ जितना चाहूं अनइंस्टॉल और पुनर्स्थापित कर सकता हूं। हालांकि, किसी कारण से, सेटअप दो रजिस्ट्री प्रविष्टियां बनाता है, जिसे मैंने मैन्युअल रूप से रखा है, उसमें शामिल मैनिफेस्ट को संदर्भित करता है, और एक जिसे स्वचालित रूप से संदर्भित किया जाता है और मेरे बिन \ डीबग फ़ोल्डर में मैनिफेस्ट को इंगित करता है। मैं रजिस्ट्री प्रविष्टियों के इस दूसरे सेट को हटाने में असमर्थ हूं क्योंकि वे मेरे सेटअप प्रोजेक्ट में कहीं भी नहीं दिखते हैं। उन्हें छोड़ने के साथ समस्या यह है कि ऐड-इन प्रत्येक आदेश को दो बार निष्पादित करता है (क्योंकि यह दो बार पंजीकृत है)।

विषम, एह?

+0

आम तौर पर वीएसटीओ क्लिकऑन के माध्यम से स्थापित किया जाता है, एमएसआई करने के लिए टीपी के माध्यम से जाने के लिए बहुत सारे कदम हैं। ClickOnce एक विकल्प नहीं है? – 76mel

+0

मैंने कभी एक बार क्लिक नहीं किया है, लेकिन मुझे नहीं लगता कि यह एक विकल्प है। हम इस समय किसी सर्वर पर प्रकाशित नहीं करना चाहते हैं – i8abug

+0

एक बार क्लिक करें आप स्थानीय ड्राइव पर प्रकाशित हो सकते हैं या कहीं भी साझा कर सकते हैं, लेकिन एमएसआई इंस्टॉल के लिए http://blogs.msdn.com/mshneer/archive/2007/ पढ़ना शुरू करें 09/04/तैनाती-आपके-vsto-add-in-all-users-part-i.aspx – 76mel

उत्तर

5

मैं के लिए VSTO पर इस Microsoft सफेद कागज पाया Office 2007 ऐड-इन तैनाती बहुत उपयोगी: http://msdn.microsoft.com/en-us/library/cc563937(office.12).aspx
(मैं शुरू में एक और कागज जो भी महान है से जुड़ा हुआ, लेकिन 2003 + 2007 के लिए लागू होता है, जो कुछ अलग है : http://msdn.microsoft.com/en-us/library/bb332052.aspx)
विशेष रूप से मैनिफेस्ट के प्रश्न पर, मुझे यह पता चला कि हार्ड-इन के लिए रजिस्ट्री कुंजी के समान ही नाम था, निर्माण के दौरान कुछ रहस्यमय कारणों के लिए, प्रकट मूल्य को VSTO मेनिफेस्ट से ऐड-इन मेनिफेस्ट में चुपचाप बदल दिया जा रहा था।

+3

यहां श्वेतपत्र का अद्यतन संस्करण (VSTO 2010) है: http://msdn.microsoft.com/en-us/library/ff937654.aspx – bernhof

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