Accueil > Forum > > > > Programme déja ouvert
Programme déja ouvert
mercredi 14 septembre 2005 à 01:05:17 |
Programme déja ouvert

gronon2
|
j'ai 2 programmes en VB6
prog1 et prog2
je lance prog1.exe
ensuite je lance prog2.exe
À son ouverture prog2.exe doit vérifier si prog1.exe est "ouvert"
si oui il m'envoie une réponse (message)
Comment fait-on cela
Gronon2
|
|
mercredi 14 septembre 2005 à 02:29:08 |
Re : Programme déja ouvert

P__ROMEO
|
Je n'ai pas la fonction qui verifi si un programme est ouvert ou pas. mais, si ca peut te dépanner jusqu'a ce que tu trouve la fonction, pour quoi ne pas faire en sorte que programme1 cré un fichier texte du non que tu veux, dans le répertoire que tu veux (assez camouflé) et qui sera suprimer toujours par programme1 à sa fermeture, ainsi, programme2 n'aura qu'a verrifier si le fichier texte existe. ca fait 3 fonction aulieu d'une seul, mais, sa marche.
si j'ai ta fonction, je te fais signe. bonne chance |
|
|
mercredi 14 septembre 2005 à 03:17:42 |
Re : Programme déja ouvert

jack
|
Salut Plusieurs solutions de toute façon avec les APIs : - Si Prog1 possède une forme, il te suffit de rechercher le handle (identifiant unique) de cette forme en utilisant les APIs de recherche de handle par le texte du caption de cette forme - Tu peux aussi rechercher le nom des exécutables en cours de run et l'identifier comme ça Charge "api-guide" sur www.allapi.net qui est un utilitaire gratuit expliquant le paramétrage des APIs avec exemples en VB6. Regarde les APIs comme FindWindow, GetWindowText ... et les autres dans la même catégorie. Vala Jack, MVP VB NB : Je ne répondrai pas aux messages privés Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
|
|
mercredi 14 septembre 2005 à 03:45:04 |
Re : Programme déja ouvert

gronon2
|
Assez ingénieux P-roméo
Mais si jamais prog1 "plante" sur un run time error alors il ne pourra éliminer le dit fichier....trop dangereux
'Merci Jack.....je fouille
Gronon2
|
|
mercredi 14 septembre 2005 à 04:27:59 |
Re : Programme déja ouvert

P__ROMEO
|
Ma solution ne devait etre de toute facons qu'un pneu de secour, jusqu'a ce que l'on trouve un bon. et, jack, je verrai aussi ton site. merci. aussi, tu pouvais en cas d'erreur mettre au debut: OnError goto suprimer ..... .... exit sub suprimer: fonction qui suprime ton fichier, et qui le programme sans trops salire  ' si je me trompe, faitent signe. end sub
|
|
mercredi 14 septembre 2005 à 05:26:22 |
Re : Programme déja ouvert

Zlub
|
Salut Gronon2,
Tu peux adapter ce code qui check si une instance d'une appli est déjà lancée :

Private Declare Function CreateWindowEx Lib "user32" Alias "CreateWindowExA" ByVal dwExStyle As Long, ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Any) As Long Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ByVal lpClassName As String, ByVal lpWindowName As String) As Long
' Instance Code Private Const InstanceCode = "A8F500EA:D54F:210F:ED0A:F4A5A20C038B"
Public Function PrevInstance() As Boolean
If FindWindow(vbNullString, ByVal InstanceCode) Then PrevInstance = True Exit Function End If
CreateWindowEx 0&, "STATIC", InstanceCode, 0&, 0&, 0&, 0&, 0&, 0&, 0&, App.hInstance, 0& PrevInstance = False
End Function
++
Zlub
|
|
mercredi 14 septembre 2005 à 07:47:00 |
Re : Programme déja ouvert

Renfield
|
ZLub, tu n'utilse tout de même pas le code que tu as fournis..... en VB, tu as tout simplement : app.PrevInstance qui indique si une version d'un Exe tourne.... pour le probleme evoqué ici, un FindWindow est de mise ici Amusez-vous ! Renfield - thomas_reynald@msn.comAdmin CodeS-SourceS - MVP Visual Basic
|
|
mercredi 14 septembre 2005 à 10:43:04 |
Re : Programme déja ouvert

Zlub
|
Salut,
non j'avoue, j'utilise pas ... Il s'agit d'un vieux code qui trainé sur mon PC...
++
Zlub
|
|
jeudi 15 septembre 2005 à 04:01:13 |
Re : Programme déja ouvert

doro81079
|
bonsoir,
donc pour compléter le post de renfield...
tu mets ce code dans le form load de la 1ère form chargée de ton appli :
If App.PrevInstance = True Then
MsgBox "Programme déjà ouvert !"
Unload Me
End If
ce qui t'évite de créer une seconde appli...
salut
doro
|
|
jeudi 15 septembre 2005 à 05:01:58 |
Re : Programme déja ouvert

gronon2
|
Je vais être plus précis dans ma demande
prog1.exe fait des calculs de mensualités pour des prêts sur achat d'automobiles
prog2.exe fait des mises à jour du prog1.exe
lorsque je lance prog2.exe, celui-ci doit vérifier si prog1.exe est "ouvert" car comme vous le savez il est impossible d'écrasé un fichier lorsque celui-ci est "ouvert" en mémoire
comment dois-je utiliser "App.PrevInstance " dans prog2.exe pour faire cette vérification sur prog1.exe
Gronon2
|
|
Cette discussion est classée dans : exe, programme, ouvert, prog1, prog2
Répondre à ce message
Sujets en rapport avec ce message
Comment vérifier si un programme externe est ouvert ?? [ par AlexPoulard ]
Bonjour, Je voudrais savoir si il est possible de vérifier si un programme est ouvert (style VB6.exe, ou winword.exe ...) Merci beaucoup.
Créer des fonctions exécutables (VB6) [ par nsf78 ]
Bonjour. PROBLEME : Je souhaite faire un programme Prog1.exe faisant appel à un programme Prog2.exe avec des arguments arg1 et arg2 Après traitemen
Programme qui se fige [ par Paounet ]
Paounet Comment dois-je réecrire mon programme qui fonctionne mais qui se bloque(fige) lorsque je clique par exemple sur l'explorateur de Windows ou a
Programme et Ressources extérieures à incorporer [ par VBsearch ]
Salut toute l'équipe de vbfranceVoilà, c'est le 3ème message que j'envoie concernant le même sujet.J'ai voulu lier une ressource "Dialog"(boîte de dia
Fermer un processus ouvert par une application [ par Kikod ]
Bonjour, dans mon programme, je fais appel à un objet qui permet de lancer un autre programme qui tourne en tâche de fond et permet d'accéder à un lo
Ajouter une dll dans visual Basic [ par foungo ]
Bonjour à vous, J'aimerai savoir comment ajouter, ou importer une dll dans mon fichier exe. (vb6) Si je fais un déployement de mon programme, mes dl
copie du prog lui meme [ par Mirages51 ]
Bonjour je suis (comme vus l'aurez deviner ) débutant en programmation et je voulait savoir si le programme pouvait se déplacer lui meme sans définir
Recompiler en un seul Exe l'ensemble des ressources de mon programme [ par Dr_shaman ]
Bonjour, j'ai un exécutable avec une image, une dll, une icône. Je voudrai savoir s'il est possible de tout recompiler en un seul Exe. Avec Visual 200
Lancer un programme inséré dans le projet vb [ par remifalcon ]
Bonjour ! Je souhaiterai intégrer un programme.exe dans un vb et le lancer lors de l'appui sur un bouton dans le vb.C'est à dire pas juste un raccourc
Lancer un exe externe sous excel [ par Yunchi ]
Bonjour,J'ai une fonction VB sous excel :RetVal = Shell("file_analyzer.exe, 1)Donc ça lance un programme dans le même dossier que mon xls.Ce programme
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
FAIRE UN EXECUTABLEFAIRE UN EXECUTABLE par ossama261988
Cliquez pour lire la suite par ossama261988
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|