2009-02-10 9 views
6

J'ai écrit un complément Microsoft Excel dans .NET en utilisant Add-in Express, et l'ai déployé sur environ 50 sites utilisateur différents, tous exécutant Office 2003 sur Windows XP. Le complément fonctionne très bien sur la majorité des sites, mais dans certains cas, Excel semble désactiver le complément après un certain temps, et ils doivent le trouver sur la liste des éléments désactivés pour le réactiver. Ré-activer semble prendre soin d'elle, au moins temporairement, mais il est trop tôt pour dire si cela se reproduira. Donc j'essaie de comprendre pourquoi Excel est en train de désactiver le complément, mais tout ce que je recherche ici est juste une méthode générale pour découvrir pourquoi Excel désactive un complément. Dans ma situation, le complément est en cours d'exécution sur des sites distants et j'ai eu un accès limité à dépanner. J'ai regardé dans le journal des événements et je n'ai rien vu. J'ai également une erreur de connexion dans mon complément, et cela n'a rien attrapé.Comment faire pour résoudre pourquoi Excel désactive un complément?

Des suggestions?

Répondre

6

Je suis assez sûr qu'Excel ne désactivera pas automatiquement votre addin (je n'ai rien trouvé décrivant ce comportement, veuillez me corriger si je l'ai manqué). Cependant, si l'addin se bloque/se bloque etc., la prochaine fois qu'Excel démarrera, une boîte de dialogue apparaîtra disant "Cet addin a eu une erreur fatale, voulez-vous le désactiver?" (comme le souligne Chris).

Je trouve que les utilisateurs vont invariablement cliquer sur Oui, pour pouvoir continuer leur travail. Il pourrait être utile de parler à vos utilisateurs et de voir s'ils ont vu quelque chose comme ça.

De toute évidence, il existe un problème sous-jacent avec l'addin que vous souhaitez aller au fond de. Je suppose que vos prochaines étapes pourraient être (Pardonnez-moi si ce sont des étapes de débogage évidentes que vous avez essayé):

  • Sans aucun doute ajouter quelques config à manivelle votre journalisation pour essayer de limiter ce qui se passe. Parler aux utilisateurs et découvrir les conditions qui ont conduit à un blocage/crash dans Excel, afin que vous puissiez essayer de reproduire le problème (s'il s'agit d'un crash, la consignation peut ne pas aider beaucoup).
  • Le blocage des appels dans votre addin ou dans le code que vous appelez peut conduire à un utilisateur qui tue un Excel non réactif?

Bonne chance pour la résolution du problème.

Édition: Je m'excuse, il y a des cas où Excel désactive automatiquement les ajouts. J'ai trouvé ce qui suit dans le centre d'aide de sécurité pour addins:

Désactiver la notification pour addins non signés (code restera désactivé) Cette case à cocher est disponible uniquement si vous sélectionnez les nécessiteraient des extensions d'application qui doivent être signés par Case à cocher Trusted Publisher. Dans certaines situations, la bibliothèque de liens dynamiques (.dll) (Dynamic Link Library: un ensemble de routines qui peuvent être appelées à partir de procédures Visual Basic et sont chargés et liés dans votre application au moment de l'exécution). Fichier contenant le complément pourrait être non signé. Dans ce cas, les compléments signés par un éditeur approuvé sont activés, mais les compléments non signés sont désactivés en mode silencieux.

Désactiver tous les compléments d'application (peut affecter les fonctionnalités) Cochez cette case si vous ne faites confiance à aucun complément.Tous les compléments sont désactivés sans aucune notification et les autres cases à cocher des compléments sont indisponibles.

+2

yup auto disable est tout à fait possible. La plupart des ajouts n'ont pas d'éditeur de confiance, ils sont donc désactivés après les AVs Excel. Il ne doit même pas être la "faute" de l'addin, si quelque chose d'autre a causé l'accident mais que la fonction de l'addin était sur la pile à ce moment là, Excel jettera le blâme sur les pieds de l'addin et le désactivera. –

+1

Peu de temps pour la fête - mais pour ajouter aux étapes suivantes - si votre complément plante et que vous ne pouvez pas le reproduire - vous pouvez demander à l'utilisateur de faire un vidage sur incident en utilisant procdump ou adplus et vous envoyer la vidage fichier. Vous pouvez ensuite déboguer ceci avec windbg/ntsd etc. – quixver

4

J'ai vu cela se produire quand un complément a une erreur fatale et le processus meurt. Excel remarquera cela et soit désactiver automatiquement pour la prochaine fois ou offrir de désactiver. Est-ce que votre add-in enregistre ce genre d'erreur?

+0

J'ai le même problème et je n'ai pas encore de solution. J'essaie de consigner toutes les erreurs/exceptions mais cela ne semble pas fonctionner. voir http://stackoverflow.com/questions/16447595/how-to-suppress-disable-add-in-dialog-when-excel-is-force-close – toosensitive

Questions connexes