ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Test d'instanciation d'une application   



L'auteur

dridbul2
Maroc Maroc
Membre Simple
# 0000003037
enregistré le 28/01/2011

62 ans
DRIDBA Omar
20100 Casablanca
de la société SAFILAIT S.A
Fiche personnelle


Note des membres
pas de note

Contributions > 09 - Automation

Test d'instanciation d'une application
# 0000000781
ajouté le 28/01/2011 12:39:33 et modifié le 28/01/2011
consulté 6762 fois
Niveau initié

Version(s) Foxpro :
VFP 9.0


Le téléchargement des pièces jointes est limité aux membres
Veuillez vous identifier ou vous inscrire si vous n'avez pas encore de compte ...
Description

Eviter de lancer plusieurs instances d'une application à l'aide du serveur DDE

Code source :
m.mon_appl="toto"
=DDEsetOption("SAFETY",.F.)
v_Canal = DDEInitiate(mon_appl, "system")
v_Retour = DDElastError()
=DDEsetOption("SAFETY",.T.)
if v_Retour = 0
  * Service déjà lancé ...
  =ddeterminate(v_Canal)
  * demander à l'autre instance de l'application de zoommer
  v_Canal = DDEInitiate(mon_appl, "ACTIONS")
  =DDEEXECUTE(v_Canal, "ZOOM")
  =ddeterminate(v_Canal)
  * sortir
  QUIT
else
  * démarrage d'un serveur DDE
  =ddesetservice(mon_appl,'DEFINE')
  =ddesetservice(mon_appl,'EXECUTE'.T.)
  =ddesetTopic(mon_appl, "ACTIONS""ProcActions")
endif
* ne pas oublier d'arrêter (à la sortie de l'pplication) l'instance DDE de l'application
*  Instruction =ddesetservice(mon_appl, "RELEASE")


Commentaires
le 08/02/2011, Mike Gagnon a écrit :
Le probleme est qui si l'application plante, le DDE ne sera jamais détruit.

Publicité

Les pubs en cours :

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3