Besoin aide fonction API ou autre

cs_vidoc Messages postés 15 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 19 avril 2008 - 19 avril 2008 à 09:42
cs_vidoc Messages postés 15 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 19 avril 2008 - 19 avril 2008 à 10:54
j'ai fais 1 appli pour le bureau qui tourne dans 1 prog Principale.
Les collègues me fichent la zone parcequ'ils ont l'habitude de quitter le prog Principal
avant de Fermer mon appli.
Donc ne peuvent ouvrir une 2 ème session de mon appli (qui marche avec PrevInstance).

Je Cherche 1 solution soit par API ou autre, qui par le biais du menu du prog Principal
envoit un Msg pour indiquer à l'utilisateur de Fermer d'abord  mon appli et ensuite de Quitter
le prog Principal???

Quelqu'un peut il m'aider à résoudre ce problème!

3 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
19 avril 2008 à 09:54
Avec l'API PostMessage peut-etre

Un bout de code inspiré de l'exmple donné dans l'APIGuide :

Option Explicit

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As
Long

Const WM_CLOSE =  &H10

Private Sub Form_Load()
    Dim WinWnd As Long
    'Search the window
    WinWnd = FindWindow(vbNullString, "Ici
le titre exact de la fenetre visible de l'appli à fermer")
    If WinWnd = 0 Then MsgBox "Couldn't find the window ...": Exit Sub
    'Post a message to the window to close
itself
    PostMessage WinWnd, WM_CLOSE, 0&, 0&
End Sub

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
cs_Megafan Messages postés 389 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 23 septembre 2016 2
19 avril 2008 à 10:06
Salut,
Dans le meme genre, tu peux verifier périodiquement (toutes les secondes par exemple) que l'appli principlae est lancée, si ce n'est plus le cas tu ferme ton appli .
@+
Megafan
0
cs_vidoc Messages postés 15 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 19 avril 2008
19 avril 2008 à 10:54
merci pour la réponse FindWindows et PostMessage

mais l'action serait plutôt dirigé vers le Menu du prog principal

Par exemple en cliquant sur le Menu Fichier et après Quitter
c'est là qu'il faudrait un msgbox du genre "Veuillez fermer d'abort l'appli et ensuite Quitter le Prog principal"
De ce fait l'appli n'est plus dans la barre des tâches de windows

est ce possible???
0
Rejoignez-nous