API interdire plusieurs appels même programme ???
Le
le_troll
API interdire plusieurs appels du même programme
Bonjour,
Je crois que c'est possible pas API, mais je ne trouve plus:
-1- Comment, depuis 1 exe interdire que ce dernier lance plusieurs fois le
même programme ?
-2- Et encore plus fort !
Comment, depuis 1 exe interdire que ce dernier lance un programme s'il est
déjà lancé (mais que ce n'est pas de lui qui vient le lancement) ?
--
Merci, @+, bye, Joe : ng75@noos.fr
-
Avec une hache, celui qui tient le manche a toujours raison.
-
Bonjour,
Je crois que c'est possible pas API, mais je ne trouve plus:
-1- Comment, depuis 1 exe interdire que ce dernier lance plusieurs fois le
même programme ?
-2- Et encore plus fort !
Comment, depuis 1 exe interdire que ce dernier lance un programme s'il est
déjà lancé (mais que ce n'est pas de lui qui vient le lancement) ?
--
Merci, @+, bye, Joe : ng75@noos.fr
-
Avec une hache, celui qui tient le manche a toujours raison.
-

Poser une question


Tu peux interdire à ton exe de lancer plusieurs fois un même programme en
gardant une variable indiquant si un lancement a déjà été effectué.
En ce qui concerne ta seconde question, essaye l'exemple suivant:
http://support.microsoft.com/?id2986
Il énumère tous les process en cours.
Si il est en cours, il suffit de ne pas le lancer :-)
--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com
"le_troll" news:ud0awiI%
La 1ere réponse est ok, il existe d'ailleurs du code pour ça, mais si tu
lances 2 fois ton exe par exemple, le 1er ne connaît pas les variables du
second, faut un fichier à ce moment, ou une variable d'environnement...
A ce propos, sais-tu comment on gère les variables d'environnement en VB, ?
--
Merci, @+, bye, Joe :
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
"François Picalausa" em37xyI#
On peut paratager des informations entre deux instances d'un programme au
travers d'un componsant ActiveX Exe.
Un module dans ce type de composant est partagé.
Avec une variable globale dans ce module accédée par des propriétés dans la
classe permettant l'instanciation devrait suffire.
Une autre possibilité est de ne pas permettre à deux instances de ton
programme de tourner en même temps.
Pour les variables d'environnement, tu as Environ$ qui permet de récupérer
leur valeur et les API SetEnvironmentVariable/GetEnvironnementVariable pour
un process définit.
--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com
"le_troll" news:uAX2baJ%
Il suffit de tester au lancement de ton programme :
If App.PrevInstance Then
Msgbox "L'application tourne déjà"
(Attention ça marche sur l'executable mais pas entre l'executable et le
source ouvert sous l'éditeur).
--
Olivier Besson
Pour m'ecrire, remplacer le (Je ne lis pas mes mails frequement)
To write me, replace <xx> part of my address by <com> (i don't read my mails
very frequently).
"le_troll" news:ud0awiI%