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

C++Builder Discussion :

Acc�s � une application ouverte (OLE Automation ?) [FAQ]


Sujet :

C++Builder

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 3
    Par d�faut Acc�s � une application ouverte (OLE Automation ?)
    Bonjour,
    Soit une application A (qui tourne, lanc�e par l'utilisateur, qui r�cup�re des donn�es et les affiche dans une ou plusieurs MSFlexGrid)

    Je dois faire une application B qui soit capable de r�cup�rer le contenu actuel des MSFlexGrid de l'application A.

    Pour l'instant, j'arrive � rep�rer le Handle de la fen�tre de l'appli A et les Handles des fen�tres de type MSFlexGridWndClass contenant chacune une MSFlexGrid. Par contre, de l�, je n'ai aucune id�e de ce qu'il faut faire pour r�cup�rer le contenu des MSFlexGrid.

    Si quelqu'un a une id�e, ou un conseil...
    Merci d'avance
    Pascal

  2. #2
    Membre habitu�
    Inscrit en
    Avril 2002
    Messages
    9
    D�tails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 9
    Par d�faut
    Quelqu'un avait d�j� pos� cette question... Je te donne le lien vers le Post pour voir si tu y trouve des trucs qui peuvent t'int�resser...
    http://www.developpez.net/forums/viewtopic.php?t=3535
    A+

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 3
    Par d�faut
    Merci,
    Effectivement, �a ressemble un peu mais pour ce qui est du Pipe, de la m�moire partag�e, de DDE ou du presse papier, c'est inutilisable :
    Je ne suis pas ma�tre de l'application A, c'est pas moi qui l'ai �crite et j'ai pas les sources.
    Je ne suis ma�tre que de l'application B.
    Je pense que la solution se trouve quelque part dans COM ou OLE Automation mais tous les exemples que j'ai trouv� cr�ent eux-m�me l'instance ActiveX � utiliser (cr�ation d'un Classeur Excel, d'un document Word...) alors forc�ment, c'est + facile ensuite d'invoquer des propri�t�s (sur un objet cr�� par l'appli, on a d�j� le pointeur qui va bien).
    Alors que dans mon cas, l'objet MSFlexGrid est cr�� par une autre application. Mon but est seulement d'y acc�der dans mon application. Encore une fois, pour l'instant, je ne dispose que handle de la fen�tre contenant la MSFlexGrid (MSFlexGridWndClass).
    Merci encore pour tout renseignement.
    (je peux pas croire que personne ait jamais fait �a!)
    A++
    Pascal

  4. #4
    Invit� de passage
    Inscrit en
    Juin 2002
    Messages
    1
    D�tails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1
    Par d�faut T'as deja trouv� une solution??????????????
    Je le m�me probleme que toi, et j'arrive pas � utiliser l'objet COM, si tu as trouv� la solution, svp svp svp svp svp svp laisse moi la voir!

    Salut!

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 3
    Par d�faut Toujours pas...
    Hello,

    Ben non, je n'ai pas trouv�... j'ai m�me un peu laiss� tomber en d�sespoir de cause.
    Si quelqu'un sait faire �a ou si tu trouves une solution, merci de la partager ici.
    Pascal

  6. #6
    Membre �prouv�
    Homme Profil pro
    VP of Research and Innovation
    Inscrit en
    Mai 2002
    Messages
    84
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : Canada

    Informations professionnelles :
    Activit� : VP of Research and Innovation

    Informations forums :
    Inscription : Mai 2002
    Messages : 84
    Par d�faut
    Bonjour,

    Il faudrait regarder du c�t� de GetActiveObject de OleAutomation.
    Dans le principe, CreateObject deonne une ainstance Variant de l'object automation � utiliser et GetActiveObject donne une instance d�j� existante.

    Je regarde de plus pr�s.

  7. #7
    Membre �prouv�
    Homme Profil pro
    VP of Research and Innovation
    Inscrit en
    Mai 2002
    Messages
    84
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : Canada

    Informations professionnelles :
    Activit� : VP of Research and Innovation

    Informations forums :
    Inscription : Mai 2002
    Messages : 84
    Par d�faut
    Bonjour,

    Je te confirme que �a marche.
    J'ai fait le test avec Excel. Si il n'est pas lanc� �a m'envoit bouler (il faut gerer l'erreur EOleSysError), sinon il fait le job.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    MSExcel = Variant::GetActiveObject("Excel.Application");
     
    // le job
    MSExcel.OlePropertySet("Visible", true);
     
    MSExcel.OlePropertyGet("Workbooks").OleProcedure("Add");
    MSExcel.OlePropertyGet("WorkSheets","Feuil2").OleProcedure("Select");
    MSExcel.OlePropertyGet("Range", "A1").OleProcedure("Select");
    wsprintf(buffer," Hello !");
    MSExcel.OlePropertyGet("ActiveCell").OlePropertySet("Value", buffer);

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [S�curit�] s�curit� d'acc�s � une application multi-tiers Java EE
    Par zerzy1982 dans le forum Java EE
    R�ponses: 43
    Dernier message: 12/10/2007, 21h20
  2. [VBA-E] Activer une application ouverte
    Par Scritch852 dans le forum Macros et VBA Excel
    R�ponses: 1
    Dernier message: 29/05/2007, 15h45
  3. R�ponses: 1
    Dernier message: 29/12/2006, 10h42
  4. R�ponses: 15
    Dernier message: 15/05/2006, 09h26
  5. R�ponses: 10
    Dernier message: 15/05/2006, 07h51

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