Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2017 connectés 

 


Dernière réponse
Sujet : [VB] Attendre la fin d'un programme
godbout Merci encore Guru pour tes infos, ca marche niquel maintenant ;)

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
godbout Merci encore Guru pour tes infos, ca marche niquel maintenant ;)
godbout Ben le programme marche deja.
Il teste les processus et fait une boucle tant que les processus sont la.
Mais c'est pas optimise
chrisbk truc a la con : tu peux pas faire un FindWindow (c'est du c mais doit avoir l eq en vb) et tant que trouve la fenetre du programme d'install tu poireaute ?
godbout J'etais justement en train de chercher des infos sur WaitForSingleObject.
Ca risque d'etre un peu plus complique que prevu.
 
Merci pour tes infos je vais aller y jeter un coup d'oeil ;)
Guru Tu devrais trouver des exemples de code lancant un programme et attendant la fin de son execution sur un certain nombre de sites consacrés à VB. Tu pourras trouver une liste de sites la :
 
http://www.vbug.co.uk/wlink/OtherVB.asp
 
Sinon pour ton problème tu peux utiliser les fonctions de l'api Win32 pour lancer et attendre la fin d'execution de ton application. Les fonctions a utilier sont :  
 
- CreateProcess pour créer un process executant l'application externe
- WaitForSingleObject ou WaitForMultipleObjects pour attendre la fin d'execution selon le cas.
 
Je te conseille fortement de regarder l'aide online du MSDN pour ces fonctions et les concepts de synchronisation dans Win32.
 
Process et Threads :
 
http://msdn.microsoft.com/library/ [...] d_3mgj.asp
 
Synchronisation :
 
http://msdn.microsoft.com/library/ [...] o_08z7.asp
godbout Apparemment il s'arrete pas non plus.
Dans le msdn j'ai rien trouve qui disait que le programme etait lance de maniere synchrone.
 
J'ai la ligne de commande suivante:
 
ShellExecute 0, vbStringNull, "C:\Winnt\system32\calc.exe", vbStringNull, vbStringNull, SW_SHOWNORMAL
godbout Ok je vais voir ca
Merci ;)
 
J'te tiens au courant :)
Carbon_14 Il me semble que dans ShellExecute, il y a une option pour attendre que ce soit fini (pour l'appli "shell_exécutée" ).
 
?
http://forum.hardware.fr/forum2.ph [...] &owntopic=
godbout J'ai du mal m'exprimer.
 
Je lance un prog d'installation par la commande shell.
Le pb c'est que le code continue a s'exectuer alors que le programme d'installation n'est pas fini. Je veux attendre que ce programme d'installation soit fini pour continuer mon code.
 
Pour te donner un exemple concret:
Si dans une boucle tu fais apparaitre une form, il faut que celle si soit modale.
Si elle est modale, alors la boucle s'arrete et attends que tu fermes la fenetre. SI elle n'est pas modale, alors la boucle continue et tu ne peux rien faire dans ta fenetre.
 
Je veux ouvrir un prog comme une fenetre en modal.
 
Voila... :)
juju_le_barbare slt,
 
Tu dblclik sur la form (pas un des objets, sur la form en elle même), tu choisis dans la liste déroulante ('déclaration' je crois) "unload" au lieu de "load".
Ensuite tu tapes ton code qui doit s'exécuter à la fin du prog, et il s'exécute lorsque la form s'unload (se ferme, quoi...)
 
J'espère que t'as compris mon élocution bizarre ;-)
 
juju
godbout Salut a tous :hello:
 
Il faudrait que je balance un prog avec shell en vb, mais que le code ne s'execute seulement quand le prog lance se termine.
 
Quelqu'un sait faire ca ?
 
MErci ;)

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)