2010-08-02 15 views
6

Ho creato diversi componenti aggiuntivi di Office (Excel, Word, PowerPoint e Outlook). Ho anche scritto un singolo programma di installazione MSI basato su Wix # per installare questi componenti aggiuntivi. Sono riuscito a fare tutto correttamente ma ora sono perplesso su come registrare i componenti aggiuntivi.Come registrare il componente aggiuntivo VSTO da un installatore Wix # MSI

Si può fare questo in modo interattivo facendo doppio clic su un file VSTO accompagnato in Windows Explorer e viene registrato. Scavando usando RegEdit rivela che è stato invocato rundll32.exe "C:\Program Files\Common Files\Microsoft Shared\VSTO\vstoee.dll",InstallVstoSolution %1.

Un altro metodo che ho trovato è quello di utilizzare l'utilità VSTOInstaller.exe trovata in %CommonProgramFiles%\Microsoft Shared fornendo la riga di comando corretta.

Qualcuno ha esperienza nell'uso dei componenti aggiuntivi di Wix o Wix # e VSTO? Devo scrivere un'azione personalizzata per eseguire questo o c'è qualcosa di specifico su Wix che deve essere fatto?

+2

Il problema più grande si ha intenzione di avere con WiX è bootstrapping tutti i prereqs. .NET, VSTOR (x86/x64) e possibilmente Windows Imaging Components e Windows Installer 3.1 per XP SP2 precedenti. Altrimenti, WiX è in grado di gestire tutto il materiale necessario per l'installazione. –

+1

+1 Grazie! L'uso di Oleg Shilo [eccellente Wix #] (http://www.csscript.net/WixSharp.html) lo rende possibile. Le ultime versioni includono un bootstrapper che può essere facilmente incatenato in modo tale che diversi prerequisiti siano installati prima di avviare un'installazione MSI. – wpfwannabe

risposta

2

Dipende dalle versioni di Office a cui si sta indirizzando. Ho dato un'occhiata a VSTOInstaller ma l'ho trovato registrato solo per l'utente corrente. Di seguito è riportato un articolo sul blog che ho scritto con link aggiuntivi su altri blog che mi hanno aiutato a capire tutto questo. Fondamentalmente ero in grado di decodificare ciò che un file di configurazione VSTO stava facendo e lo faccio quasi tutto in puro MSI/WiX con alcune azioni personalizzate per registrare i certificati e generare numeri casuali per Office 2010.

VSTO Lessons Learned http://blog.deploymentengineering.com/2008/04/vsto-lessons-learned.html

Modifica: quell'articolo era vecchio di un paio di anni e Office 2007 ora "tecnicamente" supporta la registrazione di AddIn HKLM come Office 2010. Anche i runtime VSTOR sono cambiati e ci sono alcuni nuovi problemi di bitness che potresti dover accontentare. Un articolo aggiornato è disponibile:

Office 2010 Bitness Pain

+0

Ci scusiamo per non averlo menzionato, ma ho scelto Office 2007 e 2010. Per quanto riguarda l'interpretazione dei file VSTO, preferirei non farlo se possibile. Il metodo rundll32 sembra abbastanza carino, ma non sono sicuro di come collegarlo a Wix a parte l'utilizzo di un'azione personalizzata. – wpfwannabe

+0

Ho aggiornato la mia risposta con un articolo più recente. Non è necessario chiamare VSTOInstaller. Basta scrivere sul registro qualcosa come file: // [INSTALLLOCATION] MyAddIn.vsto | vstolocal. Se si installa su ProgramFiles, non è necessario eseguirne il backup con un certificato. –

+0

Ho installato Office 2013, sapete se la scelta di "Office 2010 e successive" dovrebbe funzionare? Ho una domanda qui: http://stackoverflow.com/questions/16843414/vsto-c-sharp-project-using-c-wix-vs-installshield-le-with-vs-2012 –