Timst
Messages postés6Date d'inscriptionsamedi 19 juillet 2008StatutMembreDernière intervention 8 mai 2010
-
8 mai 2010 à 14:17
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
8 mai 2010 à 16:32
Bonjour ! Mon programme comprend une option permettant de générer des rapports word dont voici un extrait :
Public WordApp As Word.ApplicationClass = New Word.ApplicationClass
Public Sub openDoc(ByVal nbcat As Integer)
Dim file_path As String = "C:\releves"
WordApp.ChangeFileOpenDirectory(file_path)
WordApp.Documents.Add("DocTest")
End Sub
Quand l'utilisateur clique sur un bouton, une instance de word est lancée, et un document (créé à partir du modèle 'DocTest') est affiché. On peut en créer plusieurs de suite et tout.
Le seul problème, c'est que quand l'utilisateur ferme le dernier document word, le processus (WINWORD.exe) lancé par WordApp est automatiquement terminé (normal), et que s'il tente de générer un nouveau rapport ça plante, le processus Word n'existant plus : "Le serveur RPC n’est pas disponible. (Exception de HRESULT : 0x800706BA)".
L'idée serait donc de trouver un moyen pour que le processus word ne soit pas terminé quand l'utilisateur ferme le dernier fichier, ou sinon qu'une nouvelle instance de word soit lancée à chaque rapport généré. J'ai essayé de créer un tableau de Word.ApplicationClass, ça n'a pas marché... mais peut être que je m'y suis mal pris.