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

VB 6 et antérieur Discussion :

collaboration entre applications


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut collaboration entre applications
    Bonjour à tous,

    je réalise un programme en VB6 qui lit un fichier ASCII afin de remplir une base de données ACCESS. Ensuite le programme travaille sur la BdD pour présenter différents états.

    Le code commence à devenir volumineux et je me suis dis qu'il serait bon de morceler le logiciel en plusieurs applications.

    L'utilisation de la propriété Command à l'exécution d'un Shell permet au programme principal de piloter une application esclave. Mon soucis est que je ne sais pas comment mettre le programme principal en attente de la fin de traitement qu'il vient de demander.

    J'avais penser faire une boucle d'attente dans le principal jusqu'à ce que l'application esclave envoie un message de fin de traitement. Il me semble que je pourrai utiliser une API du type Sendmessage mais je ne maîtrise pas du tout le sujet.

    Donc voilà ma question, comment fait-on pour mettre un programme en attente du message d'un autre ??? (en VB si possible !!! mais rien que la logique devrait me suffire).

    Merci d'avance du coup de main.



    noune40

  2. #2
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    J"ai ecrit un compoasant permettant a deux applis ecrites en vb de communiquer entre elles : DiInterAp6.
    Tu peux le télécharger avec son source en suivant le lien mes contributions dans ma signature
    J'espere que çà pourra t'aider
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  3. #3
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Désolé de ne pas répondre à ta question mais quel est l'intérêt de découper ton application en plusieurs ? Elles est si lourde que ça ? Quelle taille à peu près ?
    Je comprends que de gros modules appelés exceptionnellement soient séparés mais cela ne semble pas être le cas de ton appli si j'ai bien compris ?
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 730
    Points : 876
    Points
    876
    Par défaut
    Citation Envoyé par OhMonBato Voir le message
    Désolé de ne pas répondre à ta question mais quel est l'intérêt de découper ton application en plusieurs ? Elles est si lourde que ça ? Quelle taille à peu près ?
    Je comprends que de gros modules appelés exceptionnellement soient séparés mais cela ne semble pas être le cas de ton appli si j'ai bien compris ?
    +1, combien fait l'exécutable compilé ? Pourquoi penses-tu que ce sera mieux pour l'utilisateur ? Tu as des ralentissements ?

  5. #5
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    en tout état de cause, tu peux faire ce que tu souhaites.

    1) shellexecute te renverra un handle
    2) Openprocess avec le handle te renverra 0 si l'appli est fermée, autre chose si ça tourne encore.

    Lancer l'application
    Tant qu'openprocess = 0
    attendre (doevents)
    fin tant que

    a+

  6. #6
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Pourquoi ne pas faire les différentes "appli" dans le meme projet ? cela eviterais de passer par des handle. Tu peux séparer ton appli en plusieurs bloc (différents modules, différentes feuilles ...) mais garder le tout dans un unique projet. Je pense que cela serait plus facile à gérer
    La connaissance seule ne suffit pas. La vraie compréhension vient de la mise en expérience.
    Règles|FAQ|Tuto

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    Bonjour à tous,

    désolé de n'avoir pas donné de signe de vie plus tôt.

    En fait je me suis aperçu que lors d'un shell d'une application, le programme qui l'exécute se met en attente de la fin de celle-ci. Je n'ai donc plus de soucis.

    Le pourquoi je préfère avoir plusieurs appli est que une me sert à convertir un fichier ASCII en une base de donnée et que les autres exploitent de manière différente cette base et non liée. Je suppose qu'il faudrait créer un ocx ou un dll mais je n'y connais rien alors j'ai trouvé cette solution.

    Encore merci à tous pour vos réponses et bonne soirée.

    noune40

Discussions similaires

  1. mesure de bande passante entre application et client
    Par localhost dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 09/02/2006, 18h26
  2. partage de données entre applications
    Par dr_feelgood dans le forum Access
    Réponses: 2
    Dernier message: 09/11/2005, 10h42
  3. [COM | VB] communication entre application hétérogène
    Par zlavock dans le forum Général Java
    Réponses: 8
    Dernier message: 21/11/2004, 10h51
  4. Envoi de caractères entre applications
    Par Le Mage dans le forum Windows
    Réponses: 5
    Dernier message: 05/08/2004, 16h17
  5. Réponses: 3
    Dernier message: 30/03/2004, 09h38

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