Bref ce que je veux faire c lors de l'ouverture de l'application que le programme verifie si il est présentement en cours dexecution et de killer ce processus si il roule dja...
Tout ca en Vb 6 stp !
Merci !
Bref ce que je veux faire c lors de l'ouverture de l'application que le programme verifie si il est présentement en cours dexecution et de killer ce processus si il roule dja...
Tout ca en Vb 6 stp !
Merci !
Cela a été déjà abordé récemment :
une recherche devrait te forunir la réponse.
moi je fais ça au form_load de ma premiere feuille fille
avec en déclaration dans un module
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Dim aName As String Dim hwndPrev 'As SysInt aName = Me.Caption ' nom de fenêtre a rechercher If App.PrevInstance Then ' cherche une instance de programme précédente Me.Caption = "" 'masque le nom de la fenêtre active hwndPrev = FindWindow(vbNullString, aName) ' recherche l'handle de l'instance précedente If hwndPrev <> 0 Then ' si instance trouvée MsgBox "Le programme est déjà lancé, cliquez sur Ok puis utilisez ALT+TAB pour basculer sur le programme", 64 Unload mafeuillefille Unload MDIForm1 End End If End If
voila voila ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As Any, ByVal lpWindowName As Any) As Long
bhaal76
par contre, j'ai pas trouvé le moyen de basculer sur l'appli déjà lancé, alors si t'as une idée, hésite pas ...
bhaal76
moi en gros ce que je veux faire c'est que si l'application est deja lancé, on tue celle qui existe depuis le plus longtemps, soit celle dja presente et non la nouvelle !
Merci
Je sais pas si ça peut t'aider mais moi, je mets ce bout de code au début de mon application :
Je ne sais pas si c'est l'idéal mais ça fait ce que je veux : ne pas faire partir l'application si elle est déjà en cours.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 If App.PrevInstance = True Then End End If
je viens de trouver ça,
avec comme exemple pour fermer une fenetre ou une application
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Public Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
const WM_CLOSE = &H10
di& = PostMessage(hwnd, WM_CLOSE, 0&, 0&)
hwnd : handle de la fenetre devant recevoir le message
comme explication, y'a :
Poster ce message à une feuille oou à une fenetre revient à invoquer la commande Fermeture du menu système de celle-ci
voila, j'espere que ça peut t'aider ...
bhaal76
au passage, je te rappel que tu peux avoir l'handle de l'instance précédente avec ce que je t'ai filé tout à l'heure ...
bhaal76
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager