IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Word et Delphi


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2002
    Messages : 8
    Par défaut Word et Delphi
    Je dois écrire un programme qui devrait tester combien de fois word est ouvert et pour chaque session ouverte imprimer le document. Je ne trouve pas comment tester et prendre la main de word. Je précise que word n'est pas du tout gérépar mon application. Pas de DDE, pas de OLE etc. qqun aurait une piste.

    J'utilise BSD Delphi 2005

    Salutation
    Franckie

  2. #2
    Membre éclairé Avatar de Ludo_360
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    295
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 295
    Par défaut
    avec un timer, tu peux laisser ton appli en tache de fond et tu vérifie régulièrement les noms des applis lancés par les utilisateurs de la machine.

    ludo

  3. #3
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    tu as aussi les apis windows pour recuperer la liste des process ... mais le plus dur c'est pas de recuperer le handle de l'instance du document word ... mais bel est bien de lancer l'impression !

    Je ne vois pas comment lancer l'impression automatiquement sans la prise de controle de l'applciation par OLE au minimum.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2002
    Messages : 8
    Par défaut Word et Delphi
    Merci pour ta suggestion, mais peut-on prendre la main avec OLE d'une apllication alors qu'elle est déjà démarrée ?

  5. #5
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    alors la ..... tres bonne question

  6. #6
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2003
    Messages : 115
    Par défaut
    Citation Envoyé par Franckie
    Merci pour ta suggestion, mais peut-on prendre la main avec OLE d'une apllication alors qu'elle est déjà démarrée ?
    Salut

    si si, ça marche très bien. Surtout avec les Word et Excel. Quelque soit le nombre de fenêtres word, il n'y a qu'un seul process word qui gère le serveur DCOM Ole automation et qui "voit" tous les documents ouverts.

    Petit test rapide :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    program Project1;
     
    uses
      Windows, Forms, Dialogs, SysUtils, word97;
     
    {$R *.res}
     
    var
      word: TWordApplication;
     
    begin
      Application.Initialize;
      word := TWordApplication.Create(application);
     
     
      ShowMessage(IntToStr(word.Documents.Count) + ' documents ouverts');
      word.free;
     
      with Application do
      begin
        if Handle <> 0 then ShowOwnedPopups(Handle, False);
        ShowHint := False;
        Destroying;
        DestroyComponents;
      end;
     
     
    end.
    Cà affiche le nombre de documents ouverts qu'on lance ou non word avant ou après

    JP

  7. #7
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    Bien ... bon a savoir

Discussions similaires

  1. Comment utiliser Word avec Delphi 7 ?
    Par muquet dans le forum Débuter
    Réponses: 9
    Dernier message: 06/12/2005, 18h52
  2. ouverture de fichiers word dans delphi (sans utiliser word)
    Par poussinphp dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 11/07/2005, 14h25
  3. Sous Word depuis Delphi
    Par alexmorel dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 17/06/2004, 12h45
  4. Word et Delphi
    Par popeyes dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 01/03/2004, 19h40
  5. [AUTOMATION WORD]Pilotage Word par Delphi
    Par Sunny dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 05/12/2002, 17h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo