2010-08-02 23 views
6

से VSTO ऐड-इन कैसे पंजीकृत करें मैंने कई कार्यालय ऐड-इन्स (एक्सेल, वर्ड, पावरपॉइंट और आउटलुक) बनाए हैं। मैंने इन ऐड-इन्स को स्थापित करने के लिए एक सिंगल विक्स #-आधारित एमएसआई इंस्टॉलर भी लिखा है। मैंने सबकुछ ठीक से करने में कामयाब रहा है लेकिन अब मैं परेशान हूं कि ऐड-इन्स कैसे पंजीकृत करें।एक विक्स # एमएसआई इंस्टॉलर

कोई विंडोज एक्सप्लोरर में VSTO फ़ाइल के साथ डबल-क्लिक करके यह इंटरैक्टिव रूप से कर सकता है और यह पंजीकृत हो जाता है। RegEdit का उपयोग करके खुदाई से पता चलता है कि rundll32.exe "C:\Program Files\Common Files\Microsoft Shared\VSTO\vstoee.dll",InstallVstoSolution %1 आवेदित है।

मुझे मिली एक अन्य विधि उपयोगिता VSTOInstaller.exe%CommonProgramFiles%\Microsoft Shared में सही कमांड लाइन की आपूर्ति करने के लिए उपयोग की जाती है।

क्या किसी को भी Wix या Wix # और VSTO ऐड-इन्स का उपयोग करने में कोई अनुभव है? क्या मुझे यह करने के लिए एक कस्टम कार्रवाई लिखनी चाहिए या क्या कुछ ऐसा विक्स विशिष्ट है जिसे करने की आवश्यकता है?

+2

सबसे बड़ी समस्या अपने WiX के साथ करने जा अपने prereqs के सभी bootstrapping है। पुराने XP SP2 के लिए .NET, VSTOR (x86/x64), और संभवतः विंडोज इमेजिंग घटक और विंडोज इंस्टालर 3.1। अन्यथा वाईएक्स सभी इंस्टॉलर उचित सामग्री को संभाल सकता है जो आपको करने की ज़रूरत है। –

+1

+1 धन्यवाद! ओलेग शिलो के [उत्कृष्ट विक्स #] का उपयोग करना (http://www.csscript.net/WixSharp.html) यह संभव बनाता है। नवीनतम रिलीज़ में बूटस्ट्रैपर शामिल है जिसे आसानी से जंजीर किया जा सकता है ताकि एमएसआई सेटअप लॉन्च करने से पहले कई आवश्यकताएं स्थापित की जा सकें। – wpfwannabe

उत्तर

2

यह इस बात पर निर्भर करता है कि आप किस कार्यालय के लक्ष्यीकरण कर रहे हैं। मैंने VSTOInstaller को कॉल करने में देखा लेकिन मुझे लगता है कि यह केवल वर्तमान उपयोगकर्ता के लिए पंजीकृत है। नीचे एक ब्लॉग आलेख है जिसे मैंने अतिरिक्त लिंक के साथ अन्य ब्लॉगों के साथ लिखा था जिसने मुझे यह सब समझने में मदद की। मूल रूप से मैं इंजीनियर क्या एक VSTO कॉन्फ़िग फ़ाइल कर रहा था रिवर्स करने में सक्षम था और प्रमाणपत्र रजिस्टर और Office 2010

VSTO सबक http://blog.deploymentengineering.com/2008/04/vsto-lessons-learned.html

सीखा के लिए यादृच्छिक संख्या उत्पन्न करने के लिए कुछ कस्टम क्रियाओं के साथ शुद्ध एमएसआई/WiX में यह लगभग सभी करते हैं

संपादित करें: वह आलेख कुछ साल पुराना था और Office 2007 अब "तकनीकी रूप से" एचकेएलएम एडइन पंजीकरण का समर्थन करता है जैसा कि कार्यालय 2010 करता है। इसके अलावा वीएसटीओआर रनटाइम बदल गए हैं और कुछ नए सीधा मुद्दे हैं जिनके साथ आपको संतुष्ट होना पड़ सकता है। एक अद्यतन लेख उपलब्ध है:

Office 2010 Bitness Pain

+0

इसका उल्लेख करने के लिए खेद है लेकिन मैं Office 2007 और 2010 को लक्षित कर रहा हूं। VSTO फ़ाइलों को समझने के लिए, मैं नहीं कर सकता कि मैं कर सकता हूं। Rundll32 विधि काफी अच्छी लगती है लेकिन मुझे यकीन है कि कस्टम कार्रवाई का उपयोग करने के अलावा इसे Wix में कैसे प्लग करें। – wpfwannabe

+0

मैंने अपने उत्तर को हाल के लेख के साथ अपडेट किया। आपको VSTOInstaller को कॉल करने की आवश्यकता नहीं है। रजिस्ट्री को बस फ़ाइल जैसे कुछ लिखें: // [INSTALLLOCATION] MyAddIn.vsto | vstolocal। यदि आप प्रोग्रामफाइल पर स्थापित करते हैं तो आपको इसे प्रमाणपत्र के साथ वापस नहीं लेना होगा। –

+0

मेरे पास कार्यालय 2013 स्थापित है, क्या आपको पता है कि "कार्यालय 2010 और बाद में" चुनना चाहिए या नहीं? मेरे यहां एक प्रश्न है: http://stackoverflow.com/questions/16843414/vsto-c-sharp-project-using-c-wix-vs-installshield-le-with-vs-2012 –

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