VSTO 2, Outlook Addin et deploiement
Lors de la création d’un Addin Outlook avec Visual Studio Tools for Office 2005, un installeur est automatiquement ajouté à la solution pour permettre le déploiement facile de votre Addin.
Comme beaucoup, j’ai testé cet installeur localement sur mon poste de développement, satisfait du résultat.
La ou l’histoire se corse, c’est lorsque l’on essaie de déployer cette Addin sur un poste « classique », ne contenant pas les prés requis au bon fonctionnement, comme par exemple le rutime de VSTO. En principe l’installation se déroule sans problèmes, mais l’Addin ne fonctionne pas.
Après plusieurs recherches sur le Web, je suis enfin tombé sur LA solution complète et détaillée : http://weblogs.asp.net/mnissen/articles/427504.aspx
Pour faire court, voici, étape par étape ce qu’il faut faire :
1°) Ajoutez des actions d’installation supplémentaires
Rajouter la class Installer à la racine du projet : http://weblogs.asp.net/mnissen/articles/427490.aspx
Et les namespaces nécessaires.
Ne pas oublier d’ajouter à l’Addin la référence à « System.Configuration.Install »
Cette classe « Code Security Access » va, au moment de l’installation, configurer les droits nécessaires pour le bon fonctionnement de l’Addin.
2°) Ajoutez dans l’installeur une “Custom Action” pour exécuter la classe d’installation
Sur le projet AddinSetup, Click droit / View / Custom Action
Click droit sur Custom Action / Add Custom Action / Application Folder / Primary Output from NomAddin (Active)
3°) Téléchargez les prés requis afin de les ajouter au processus d’installation
a°) Téléchargez: http://sharepoint.madsnissen.net/BlogContent/CustomPrerequisites_Final.zip
Le dézipper dans \Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages
b°) Télécharger : o2003pia.msi : http://www.microsoft.com/downloads/details.aspx?FamilyID=3c9a983a-ac14-4125-8ba0-d36d67e0f4ad&DisplayLang=en
Extraire le MSI de l’exe et le mettre dans le répertoire
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\O2003PIA
c°) Télécharger : vstor.exe:
http://www.microsoft.com/downloads/details.aspx?FamilyID=f5539a90-dc41-4792-8ef8-f4de62ff1e81&DisplayLang=en
Le mettre dans le répertoire
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\vstor
Le fait d’installer tout ces packages dans le répertoire « C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages » du poste de développement, va permettre de les définir comme dépendances dans Visual Studio au niveau de l’installeur de l’Addin.
4°) Liez ces pré requis à l’installeur
Sur le AddinSetup, Click droit / Properties / Préréquisites
Cocher :
.NET Framework 2.0
Microsoft Visual Studio Tools For Office Runtime Redistributable
Microsoft Office Outlook 2003 (SP2) (Non obligatoire)
Microsoft Office 203 PIA Redistribuatable
Cocher à chaque fois « Download prerequisites from the same location as my application » afin de proposer un installeur « tout en un » contenant tout les prés requis, sauf éventuellement pour le Framework 2.0 qui peut être télécharger facilement et automatiquement depuis le site de Microsoft.
5°) Déployez !
Voila, il ne reste plus qu’à distribuer l’installeur contenant un .msi, un setup.exe et un répertoire pour chaque pré requis. Attention de bien exécuter setup.exe pour l’installation car le .msi installe uniquement l’Addin sans vérifier et installer les prés requis.
Si les pré requis ne sont pas installés sur le poste de déploiement, les installeurs nécessaires s’exécuteront et une fois tout en ordre, l’Addin s’installera.
PS : Je vais mettre les sources d’un exemple dans la demi heure, je blog déjà ça car Cyril me harcèle…
EDIT: Voici un exemple d'Addin Outlook et d'installeur pour illustrer ce post: http://www.csharpfr.com/code.aspx?ID=35735