2012-09-26 4 views
2

J'ai créé un plugin Outlook .Net 4.0 (x86) Office 2007 (32 bits). Faire le plugin était la partie facile, rendant l'installateur un peu plus fastidieux. Après quelques recherches sur VSTO et comment créer MSI pour cela, j'ai (et quelques autres développeurs pour la vérification) a suivi les deux "Deploying a Visual Studio 2010 Tools for Office Solution Using Windows Installer", vérifié manuellement "Deploying a VSTO 2010 solution for Office 2007/2010 using Windows Installer". J'ai aussi fait des recherches comme tester "How do you assign the Assembly Location of an Excel VSTO Installation?" et plus, je ne me souviens pas de tout..Installation MSI du plugin .Net 4.0 Office 2007

Toutes les dépendances nécessaires ont été prises en charge et un double-clic manuel sur le fichier .vsto l'installe avec succès et l'utilisateur peut l'utiliser. (En regardant Process Monitor cela semble utiliser l'installation SideBySide, ne trouve aucune utilisation des mêmes clés de registre que les instructions de Microsoft dictent.)

L'installation de MSI ne fonctionne toujours pas. Il installe bien et enregistre les clés de registre comme prévu, mais le plugin n'est pas chargé au démarrage d'Outlook. Les VSTO registry keys sont correctement écrits selon la documentation. Le plugin semble être enregistré dans Outlook (Trust Center), et je peux l'activer manuellement. Toutefois, lors du redémarrage d'Outlook après l'avoir activé manuellement, la clé de registre LoadBehavior passe de 3 (Loaded, Load au démarrage) à 0 (Unloaded, Do not load automatically). À aucun moment le plugin n'est enregistré (il est supposé enregistrer une barre d'outils + bouton).

Comment puis-je faire fonctionner le MSI?

Pourquoi le guide ne fonctionne-t-il pas? (Changements dans .Net 4.0? Non compatible avec Office 2007? Tout simplement faux?)

Comment puis-je corriger ce qui ne va pas? Je ne trouve rien d'utile dans le journal des événements.

(PS! Installation manuelle n'est pas une option. Le fichier doit être déployé automatiquement sur un grand nombre d'ordinateurs.)

+0

Quelle est la valeur de votre clé ** Manifeste **? Veuillez partager le chemin exact vers le registre où vous ajoutez cette clé. Vous devez attacher un débogueur au processus 'outlook.exe' pour voir quelles exceptions sont lancées. Le 'LoadBehavior' passera de ** 3 ** (* Loaded *) à ** 0 ** (* Unloaded *) si le plugin se bloque. – SliverNinja

+0

La clé de manifeste contient: 'C: \ Program Files (x86) \ Société \ Société.OutlookPlugin \ Company.OutlookPlugin.Outlook2007Plugin.vsto | vstolocal'. L'association de Visual Studio à Outlook ne révèle aucune exception de code managé. –

+0

Clé du manifeste semble très bien - où placez-vous cette clé de manifeste dans le registre (* ruche de registre *)? – SliverNinja

Répondre

0

J'ai fini par créer un programme d'installation NSIS où j'exécute vstoinstaller avec le drapeau silencieuse pour installer VSTO. J'ai également utilisé un certificat valide pour signer les binaires et (par programme) ajouter le certificat au magasin de confiance pendant la phase d'installation avant vstoinstall pour contourner le code d'erreur -300.

+0

Juste un sidenote, nous avons fini par utiliser plus tard http://www.add-in-express.com/ qui a manipulé tous les .. VSTO merde. J'ai bien travaillé. –