Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1298 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [C++\VBA] Communication C++ VBA

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++\VBA] Communication C++ VBA

n°453495
Piemur2000
Posté le 10-07-2003 à 12:40:07  profilanswer
 

Bonjour,
 
Je cherche un moyen de faire communiquer une appli VBA avec une autre en C++. Le but c en gros de lancer l'apli C++ à partir de VBA et de lui passer des données et qd C++ à fini c calculs il retourne d valeurs.
 
Merci

mood
Publicité
Posté le 10-07-2003 à 12:40:07  profilanswer
 

n°453508
HelloWorld
Salut tout le monde!
Posté le 10-07-2003 à 12:53:03  profilanswer
 

Une dll semble toute indiquée ...


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°453557
skeye
Posté le 10-07-2003 à 13:36:24  profilanswer
 
n°453729
Piemur2000
Posté le 10-07-2003 à 15:32:59  profilanswer
 

HelloWorld a écrit :

Une dll semble toute indiquée ...


 
Le probleme d'une DLL c que ca n'execute que d fonctions et qu'il n'y a pas vraiment d'échange. Comme j'aurais certainement besoin de faire communiquer les deux applications entre elles je ne suis pas sur que ce soit adapté??? J'aurais besoin de faire des trucs du style : je click sur un bouton dans l'appli C++ ca demande des info à VBA et aussi je click sur un bouton dans VBA et ca execute quelque chose dans l'appli C++. Je vois pas comment faire ca avec des DLL.

n°453737
skeye
Posté le 10-07-2003 à 15:37:08  profilanswer
 

Je dis probablement une connerie, mais ya pas moyen de faire communiquer les 2 avec des sockets (existe en VB ca?)?

n°453741
Piemur2000
Posté le 10-07-2003 à 15:39:47  profilanswer
 

skeye a écrit :

Je dis probablement une connerie, mais ya pas moyen de faire communiquer les 2 avec des sockets (existe en VB ca?)?


 
Bah ouais c un truc genre socket ki me fodrai mais je c pas comment ca marche et si c possible avec VB...

n°453818
HelloWorld
Salut tout le monde!
Posté le 10-07-2003 à 16:12:04  profilanswer
 

Ben y'a bcp bcp de solutions.
Ca s'appelle l'IPC.
Mailshots
pipes
dll
DDE
COM/OLE
sockets
File mapping
presse papier
shared memory
RPC
...


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°453850
Piemur2000
Posté le 10-07-2003 à 16:22:39  profilanswer
 

HelloWorld a écrit :

Ben y'a bcp bcp de solutions.
Ca s'appelle l'IPC.
Mailshots
pipes
dll
DDE
COM/OLE
sockets
File mapping
presse papier
shared memory
RPC
...


 
Cool... Et c koi le plus simple? Comment ca marche? Tu peu expliquer un peu plus stp?
 
Merci

n°453990
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 10-07-2003 à 18:11:25  profilanswer
 

HelloWorld a écrit :

Ben y'a bcp bcp de solutions.
Ca s'appelle l'IPC.
Mailshots
pipes
dll
DDE
COM/OLE
sockets
File mapping
presse papier
shared memory
RPC
...


t'as oublié CORBA :D

n°454018
HelloWorld
Salut tout le monde!
Posté le 10-07-2003 à 18:32:09  profilanswer
 

Et les messages windows aussi.
Le plus simple, si tu connais un peu la prog windows, c'est les messages je pense.
Après, les autres, je les ai pas tous testés.
Les sockets, c'est surement ce qu'il y a de plus portable.
OLE/COM ou CORBA, c'est peut être un peu too much.
Mais avant tout, explique un peu + ton cas, ce que tu veux echanger (la quantite), et ce que ton appli C++ doit faire. Comment tes 2 applis interagissent quoi.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
mood
Publicité
Posté le 10-07-2003 à 18:32:09  profilanswer
 

n°454046
Piemur2000
Posté le 10-07-2003 à 19:16:08  profilanswer
 

Bon ok j'explique un peu plus dans les details. Ce que je dois echanger c d tableaux de données (double) contenant a peu pres 3 colones de 12000 valeurs. Le but de l'appli C++ est de visualiser ces valeurs de faire des animations ou de faire des calculs et de renvoyer les valeurs à VB. En fait l'appli C++ comprend une interface qui permet de demander d'avantages de données à VBA...

n°454679
HelloWorld
Salut tout le monde!
Posté le 11-07-2003 à 09:50:42  profilanswer
 

Ton appli VBA fournit le tableau à C++. Puis, que se passe-t-il, elle attend le résultat ? Ou fait autre chose ? C++ demande d'avantage de données, de quel genre ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°454768
Piemur2000
Posté le 11-07-2003 à 10:44:00  profilanswer
 

HelloWorld a écrit :

Ton appli VBA fournit le tableau à C++. Puis, que se passe-t-il, elle attend le résultat ? Ou fait autre chose ? C++ demande d'avantage de données, de quel genre ?


 
Ben ca depend de ce que l'on veu. Parfois VB attend un resultat. Parfois l'appli C++ demande d'otres tableau, parfois des données mais qui ne sont pas des tableaux... En fait ca depend vraiment de ce que l'utilisateur choisi dans les 2 interfaces.

n°455556
HelloWorld
Salut tout le monde!
Posté le 11-07-2003 à 17:12:21  profilanswer
 

Ce me parraît quand même bizarre de devoir faire 2 applis séparées pour ça. T'as pas moyen de faire en sorte que l'aplli VBA s'occupe de l'interface (quit à utiliser des objets écrits en C++) et utilise une dll C++ pour ses calculs ?
Sinon, donc, c'est une relation de type client-serveur : VBA demande un truc à C++ et attend la réponse ... le pblm c'est que pour fournir cette réponse C++ demande des trucs à VBA (c'est ce double sens qui me derange dans ta conception). Donc y'a 2 clients serveurs ...
Je sais pas trop ce qui est le plus simple en VBA ... tu peux peut être bidouiller dans le genre :
- tu créés une dll C++ que tu appelles depuis VBA
- lors de l'appel tu lui fournis un moyen pour qu'elle te demande + d'infos
 
reste à trouver ce moyen de communiquer depuis C++ vers VBA. Tes connaissances influent sur le choix. Si tu connais la prog win32, tu peux créer une fenêtre dont le seul but est de recevoir des messages privés et passer le handle de cette fenêtre à la dll C++ (pour qu'elle fasse des sendmessage dessus). Y'a les sockets aussi (tu passes un numero de port).
Tu peux utiliser une zone mémoire commune (tu passes un pointeur sur l'ensemble des données, la dll C++ pioche ce qui l'intéresse) c'est simple et efficace avec une dll (même process).
Faut voir ce qui est faisable (simplement) en VBA.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [C++\VBA] Communication C++ VBA

 

Sujets relatifs
Cherche doc sur MOC (methode organisationnel de communication)[VBA] Executer une macro à l ouverture d'un fichier excel [resolu]
[VBA] Portabilité des barres d'outils affectées à des macros ?ptit question facile VBA
[VBA] Excel : comment tester la "visibilité" d'une cellule ?Surnaturel => conversion de nombres Access/VBA, incompréhensible !!!
[VBA et Access] Question sur un morceau de code ![VBA/VB] Utilisation d'une dll - Localisation de la dll
[VBA] Access Lier formulaire et sous-formulaire[ VBA ] creer 1 table en affectant une liste de choix pr ses champs
Plus de sujets relatifs à : [C++\VBA] Communication C++ VBA


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR