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 :

[Visual Basic]Simple mais pas si simple


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut [Visual Basic]Simple mais pas si simple
    Bonjour,

    Je commence tout juste à découvrir Microsoft Visual Basic (j'utilise la version 6.0). J'ai réussi à faire un petit programme que je lance par ligne de commandes ou par double clique sur une icône et ça marche super bien. Le seul souci c'est que je veux que ce programme ne s'exécute qu'une seule fois, c'est à dire que s'il est déjà lancé il ne doit pas y avoir une nouvelle fenêtre du programme déjà lancé. Est-ce possible ? Pourquoi je fais-ça ? En gros, je veux faire un programme qui enregistre du son. Donc, je le lance, et j'appelle le MEME programme à des instants différents, avec des params différents (enregistre, stop, sauve, etc...). Voilà.

    Merci à vous pour votre aide.

    Meilleurs voeux.

  2. #2
    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
    Property PrevInstance As Boolean
    read-only
    Member of VB.App
    Returns a value that determines whether a previous instance of an application is already running.


  3. #3
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut
    Merci Vld 44 !

    Et tu ferais le test où ? (Sur quel événement ?)

    Encore merci à toi.

  4. #4
    Membre éclairé
    Avatar de Theocourant
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 618
    Points : 739
    Points
    739
    Par défaut
    Citation Envoyé par Vld44
    Property PrevInstance As Boolean
    read-only
    Member of VB.App
    Returns a value that determines whether a previous instance of an application is already running.

    Un peu plus d'indications seraient les bienvenues ...

    De plus l'information est disponible sur le forum, il faut faire des recherches ...

    Pour indication, voici un lien

    +

    Théo
    Forums VB : lire la notice
    La touche existe pour être utilisée
    Pensez au tag
    Pour ceux n'ayant pas l'aide installée :
    - Aide MSDN pour VB6
    - Aide MSDN pour VBA
    Je ne réponds pas aux questions techniques par MP. Merci d'utiliser le forum fait pour çà.

  5. #5
    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
    Personellement j'utilise un module avec un sub Public Main
    Il faut alors regeler le projet pour que dans les propriétes du projet on aie, Objet de démarrage = Sub Main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Public Sub Main()
      If App.PrevInstance Then
        MsgBox "Cette Appplication est déjà en fonctionnement",VbInformation
        Exit Sub
      End If
      Form1.Show
    End Sub
    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

  6. #6
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut
    OK, ok ! Bon maintenant, beaucoup plus dur (et après je vous promet de vous lâcher les baskets ) Voilà. Je lance le programme, je détecte qu'il y a déjà le même programme qui tourne... (vous devinez ?) ... comment basculer sur le programme qui tourne ? (l'appli déjà lancée)

    A mon avis c'est bcp plus chaud.

  7. #7
    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
    C'est effectivement tres chaud,

    Sauf si tu utilises le composant ocx que j'ai ecrit et qui peut être utilisé pour çà. Il se rouves dans le forum Vos Contributions

    Tu le trouveras ici avec ses sources.
    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

  8. #8
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut
    Ahhh non merci ! Pas d'Ocx (c'est pas bon pour la santé ça)
    Je vais encore chercher un peu. Y a bien quelqu'un qui a déjà eu ce pb et qui ne s'est pas contenté d'un msgbox du genre MsgBox "Ce programme est déjà lancé"...

  9. #9
    Membre éclairé
    Avatar de Theocourant
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 618
    Points : 739
    Points
    739
    Par défaut
    Citation Envoyé par Delbeke
    C'est effectivement tres chaud,

    Sauf si tu utilises le composant ocx que j'ai ecrit et qui peut être utilisé pour çà. Il se rouves dans le forum Vos Contributions

    Tu le trouveras ici avec ses sources.
    Delbeke est formidable. Même si tu lui poses des khôles, il arrive à te sortir une solution quasiment clés en main
    Forums VB : lire la notice
    La touche existe pour être utilisée
    Pensez au tag
    Pour ceux n'ayant pas l'aide installée :
    - Aide MSDN pour VB6
    - Aide MSDN pour VBA
    Je ne réponds pas aux questions techniques par MP. Merci d'utiliser le forum fait pour çà.

  10. #10
    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
    Tu peux telecharger le composant, lire et comprendre le source et appliquer la methode utilisée dans ton programme sans avoir recours à l'ocx.
    A ma connaissance, tu ne trouvras pas grand chose sur ce sujet sur le net.
    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

  11. #11
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut
    Merci pour toute votre aide.

  12. #12
    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
    dans l'ordre :

    1) récupérer le handle du processus via API windows (p-e getProcess je sais plus) OU en récupérant une fenêtre par son nom (c'est aussi grâce à une api)
    2) utiliser une autre api pour mettre le handle / fenêtre spécifié au premier plan ...

    nb : pour ce qui est des précisions concernant vb.app, je ne vois pas ce qu'on peut apporter d'autre.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requete toute simple mais pas si simple
    Par rose0729 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 20/11/2012, 15h03
  2. [MySQL] Problème de bdd simple mais pas évident à trouver
    Par Cynthia. dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 28/10/2010, 18h38
  3. Frame simple mais pas d' acces
    Par p0m12 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 15/10/2009, 20h57
  4. Recherche d'une regex toute simple (mais pas pour moi)
    Par rambc dans le forum Général Python
    Réponses: 7
    Dernier message: 15/04/2009, 15h23
  5. [MySQL] requete simple mais pas d'affichage
    Par herve911 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 04/02/2008, 22h03

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