28 votes

Comment créer un add-in (VSTO) Office 2007 en utilisant VS 2012 ?

Visual Studio 2012 ne semble pas prendre en charge Office 2007 (il ne dispose que de modèles de projet pour Office 2010). Si je veux créer un add-in compatible avec Office 2007, dois-je utiliser Visual Studio 2010, ou existe-t-il un moyen simple de le faire avec VS 2012 ?

S'il y a es un moyen de le faire dans VS 2012, y a-t-il des restrictions/avantages, etc. à le faire ?

44voto

SliverNinja Points 15924

Vous pouvez obtenir VS 2012 la collaboration avec Office 2007 . Créez d'abord un Complément d'Outlook 2010 et modifiez le fichier du projet ( .csproj ) afin qu'il s'ouvre dans Office 2007 et ne recherche pas Office 2010 lors de son exécution.

Voici la modification des paramètres du projet ( Exemple d'Outlook ) :

Source XPath :

//Projet/ProjectExtensions/VisualStudio/FlavorProperties/ProjectProperties/@DebugInfoExeName

Ancienne valeur (Office 2010) :

DebugInfoExeName="#Software \Microsoft\Office\14.0\Outlook\InstallRoot\Path #outlook.exe"

Nouvelle valeur (Office 2007) :

DebugInfoExeName="#Software \Microsoft\Office\12.0\Outlook\InstallRoot \Path #outlook.exe"

Après avoir modifié ce paramètre du projet, lorsque vous lancez le débogueur ( F5 ), il chargera l'application Outlook 2007 au lieu de chercher Outlook 2010.


L'un des principaux inconvénients de l'utilisation de VS 2012 pour le développement d'Office est que Le déploiement utilise désormais InstallShield LE au lieu de Visual Studio Setup Projects. . C'est un changement majeur, mais il semble MS s'éloigne du support des installateurs natifs et laisse à d'autres le soin de gérer cette charge. . WiX est un installateur alternatif mais je ne l'ai pas encore essayé. WiX ( Windows Installer XML ) ne dispose toujours pas de l'interface utilisateur présente dans InstallShield LE ou VS 2010 Setup Projects.

Le seul avantage d'utiliser VS 2012 pour le développement est que l'IDE de développement est beaucoup plus rapide.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X