none
Test si Word est actif RRS feed

  • Question

  • Bonjour,

    Avec VS 2017, dans un programme VB.Net (ou C#), comment tester si l'application Word (WinWord) est active et, si oui, comment connaitre la liste des documents ouverts ?

    Merci de votre aide.

    Cordialement


    Alain

    vendredi 10 mars 2017 14:28

Réponses

Toutes les réponses

  • Bonjour,

    Il faut faire appel à l'interop pour ca, en C# ca donne :

                lbResult.Items.Clear();
                dynamic wordApp = null;
                try
                {
                    wordApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Word.Application");
                }
                catch { wordApp = null; }
                if (wordApp == null)
                {
                    // Word n'est pas ouvert
                    lbResult.Items.Add("Word n'est pas ouvert.");
                    return;
                }
                foreach (dynamic doc in wordApp.Documents)
                {
                    lbResult.Items.Add($"Document: {doc.Name}");
                }
                wordApp = null;
    

    On demande au système d'interop de trouver l'objet "Word.Application" en cours. S'il ne le trouve pas une exception est levée.

    Ensuite comme c'est un objet "dynamic" on peut interroger les membres d'un objet Word.Application comme en VBA. Dans mon cas je parcours la liste des Documents et chaque objet "Word.Document" possède une propriété "Name".

    Cordialement,


    Yan Grenier

    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont répondues à votre question, et de noter les réponses que vous avez trouvé utiles.

    vendredi 10 mars 2017 15:39
  • Voir le thread Get list of all open word documents in all Word instances

    en cas de plusieurs instances

    • Marqué comme réponse AchLog vendredi 10 mars 2017 20:04
    vendredi 10 mars 2017 15:55
  • Grand merci Yan et Castorix31 pour vos réponses.

    J'ai suivi le lien proposé par Castorix31, qui traite plusieurs instances de Word. ça marche finement !

    Je n'aurais pas trouvé cela tout seul...

    Cordialement à vous


    Alain

    vendredi 10 mars 2017 20:04