AddinWord qui ne se lance que la 1ere*, pas les suivantes
Le
teachespeaches
Bonjour, je suis entrain de faire un petit plug-in pour Word (projet
d'extensibilité).
Le problème que je rencontre est le suivant: dans mon addin j'ai ajouté une
panelbare avec un bouton, et un évenement sur le click du bouton. L'addin
fonctionne la 1ere fois que je lance Word, mais si je lance plusieurs fois
Word (en même temps). La première instance de Word fonctionne et pas les
suivantes.
Mon bouton est présent sur toutes les fenêtres de Word, mais l'action qui
lui est attribué ne fonctionne que sur la 1ere instance de Word.
Quelqu'un voit-il pourquoi?
J'ai ajouté ma commandbar et mon bouton dans OnStartupComplete
Merci,
Peaches
d'extensibilité).
Le problème que je rencontre est le suivant: dans mon addin j'ai ajouté une
panelbare avec un bouton, et un évenement sur le click du bouton. L'addin
fonctionne la 1ere fois que je lance Word, mais si je lance plusieurs fois
Word (en même temps). La première instance de Word fonctionne et pas les
suivantes.
Mon bouton est présent sur toutes les fenêtres de Word, mais l'action qui
lui est attribué ne fonctionne que sur la 1ere instance de Word.
Quelqu'un voit-il pourquoi?
J'ai ajouté ma commandbar et mon bouton dans OnStartupComplete
Merci,
Peaches

Poser une question


même temps, je dis bien instance de Word (l'exécutable) et pas plusieurs
fenêtre de Word.
Quand vous ouvrez un nouveau fichier Word, il est très probable que vous ne
créez pas un nouveau composant Application de Word mais que vous créez une
nouvelle fenêtre dans le même composant Application. Si vous devez faire
quelque chose sur les fenêtres des documents ouverts, essayer de réagir à la
création de ces fenêtres et ne pas faire une manipulation au moment de l'
initialisation du composant Application de Word.
--
Paul Bacelar
"teachespeaches" news:
une
qu'une seule instance du programme(winword.exe).
je vois ce que vous voulez dire, mais le truc étrange, c est que mon bouton
ne devrait pas se trouver sur les fenêtres de Word après le 1er doc
ouverts...Or le bouton est présent sur chaque fenêtre, il y a juste l'action
qui lui est associée qui ne fonctionne pas.
Pourriez vous me dire comment détecter la création/ouverture d'un nouveau
document? je n'ai que "OnConnection", "OnDisconnection", "OnAddInsUpdate",
"OnStartupComplete"
et "OnBeginShutdown"
Sinon le problème vient peut etre de mon event handler...voici ce que j'ai
mis:
insertText.Click += new
Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(insertText_Click);
public void insertText_Click(Microsoft.Office.Core.CommandBarButton
barButton, ref bool someBool)
{
this.appWord.ActiveWindow.Selection.TypeText("test");
}
A moins que l'erreur en vienne de appWord...
appWord a été déclaré dans la classe Connect: Word.Application appWord;
Et je l'ai instancié comme ceci;
public void OnConnection(object application, Extensibility.ext_ConnectMode
connectMode, object addInInst, ref System.Array custom)
{
applicationObject = application;
addInInstance = addInInst;
appWord = (Word.Application)applicationObject;
}
Voilà le topo...je suis un peu perdu dans tout ca.
J'espere que vous pourez m'aider
"Paul Bacelar" a écrit :
appWord .ApplicationEvents2_Event_DocumentOpen += new
ApplicationEvents2_DocumentOpenEventHandler(toto);
public void toto(Word.Document){
// le code qui prend en compte l'ouverture d'un nouveau document
...
}
--
Paul Bacelar
"teachespeaches" news:
bouton
l'action
Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(insertText_C
lick);
en
ne
une
à la
l'
message
ajouté
L'addin
fois
les
qui
etre débarassé des erreurs de complil:
public void OnConnection(object application, Extensibility.ext_ConnectMode
connectMode, object addInInst, ref System.Array custom)
{
applicationObject = application;
addInInstance = addInInst;
appWord = (Word.Application)applicationObject;
evWord = (Word.ApplicationEvents2_DocumentOpenEventHandler)applicationObject;
evWord+= new Word.ApplicationEvents2_DocumentOpenEventHandler(toto);
}
Plus d'erreurs, mais rien ne se passe lorsque j'ouvre Word, que j'ouvre, ou
que je crée un nouveau document, donc l'évenement ne se déclanche pas.
Personnelement je n'ai toujours pas comppris pourquoi ce que j'avais fais ne
fonctionne pas. C est comme si tout code qui se trouve hors des 5 méthodes
préfaite (onconnectio, etc) n'est plus lu apres le 1er lancement de Word
"Paul Bacelar" a écrit :
Vous êtes sûr que ça marche ?
--
Paul Bacelar
"teachespeaches" news:
pour
ou
ne
message
bien
nouveau
"OnAddInsUpdate",
j'ai
Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(insertText_C
appWord;
Extensibility.ext_ConnectMode
tournent
plusieurs
vous
créez
faire
réagir
de
(projet
plusieurs
pas
l'action