Attendre la fin d'un processus qui n'est pas lancer par mon programme vb :-s
youkizouki
Messages postés82Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention12 octobre 2005
-
31 mars 2005 à 14:23
youkizouki
Messages postés82Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention12 octobre 2005
-
1 avril 2005 à 10:25
bonjour à tous,
je crée une applic qui doit recupérer la date et l'heure de fin d'execution d'un processus prédéfinis.
pour cela, il suffit d'attendre que le processus ce termine et de récupérer la date système.
(relativement simple...)
j'ai trouvé sur ce site un exemple utilisant l'API "WaitForSingleObject"
mais le problème est que le processus est lancé dans le programme vb et que l'API "WaitForSingleObject" recoit en paramètre le n° identifant du processus lancer, hors dans mon cas, je dois attendre la fin d'un processus déjà lancé (il n'est pas lance par mon programme vb donc je ne connais pas son numéro identifiant...).
SAvez vous comment récupérer le numéro identifiant d'un processus lancer "extérieurement" ou avez vous d'autres solutions a me proposer svp car je ne trouve pas du tout et j'ai vraiment besoin d'avancer dans mon applic.
je vous remercie d'avance pour l'attention que vous me porterez...
youkizouki
Messages postés82Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention12 octobre 20051 31 mars 2005 à 16:03
merci NH, mais un autre probleme se pose....
je pensais utiliser l'API waitForSingleObject afin d'attendre la fin d'exécution du processus determiné et récuperer la date des que ce processus est fini mais le problème est que pendant l'exécution de ce processus un Timer est lancé et si j'utilise l'API "WaitForSingleObject" mon applic VB attend que le programme soit terminer avant de lancer le Timer...
Aurais tu une idée sur la manière de récupérer la date de fin d'exécution d'un processus sans devoir bloquer l'application appelante (pas de Wait...)
ou encore comment tester si un processus est toujours en exécution
merci pour ta rapide réponse en tout cas et pour l'aide que tu m'a déjà apportée...
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200620 31 mars 2005 à 20:20
Salut, si tu veux lancer un prog externe avec une sorte de shell permettant d'attendre la fin du proc externe, il y a une source sur le site qui pourrait t'aider.
Le prog qui lance ce ShellWait, est stoppé tant que le prog externe n'est pas terminé. Si ce n'est pas ça que tu veux, il faudra recourir à d'autres astuces. Par exemple lancer par shell() le prog qui devra attendre la fin du prog ? Enfin, c'est à étudier....
Loup Gris
Vous n’avez pas trouvé la réponse que vous recherchez ?
youkizouki
Messages postés82Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention12 octobre 20051 1 avril 2005 à 10:25
bonjour CanisLupus,
je dois récupérer la date et l'heure de fin d'exécution d'un processus mais le probleme est que je ne peut pas bloquer mon programme vb tant que le processus n'est pas terminé car pendant l'exécution du process, mon prog vb fait tourner un "Timer", et si je bloque mon applic vb jusque la fin d'exécution du process, mon Timer ne se lance pas...
je pense utilisé dans le Timer une astuce qui établi la liste de tout les processus actif et qui test si le processus de mon choix se trouve dans cette liste (actif ou non), des que celui ci sera inactif, je récupèrerais la date système et blablabla...
Est ce une solution valable ou bien y a t il un meilleure moyen???
Connais tu une manière simple de tester si un executable est lancé??? (sans devoir etablir la liste de tout les processus lancer et verifier si le process de mon choix se trouve dasn cette liste...)
merci pour ton attention, et à tres bientot j'espère,
cordialement,
mika
----------------------------
Visual Basic 6.0 & Win 2000
/!\ application destinée à tourner sur NT4 /!\