La fonction shell() ne démarre mon prog qu'à la fin de ma fonction

La fonction shell() ne démarre mon prog qu'à la fin de ma fonction - VB/VBA/VBS - Programmation

Marsh Posté le 03-05-2005 à 20:07:06    

Bonjour, j'ai créé une fonction qui démarre un programme grace à la fonction shell et ensuite qui attend un certain nombre de seconde afin d'etre sûr que le programme est bien démarré.
 
Exemple de ce que je fais :

Code :
  1. Sub demarre()
  2. Shell("chemin de mon programme",1)
  3. Sleep 20000
  4. End Sub


 
Le problème c'est que le programme ne se démarre qu'à la fin de la fonction demarre(). Meme si je mets une attente de 2 minutes, mon prog ne se démarre qu'après les deux minutes. Pourtant il me semblait que la fonction Shell démarrait l'application aussitot. Si vous savez comment résoudre ce problème, merci de me le dire car je ne trouve pas de solution. Merci.

Reply

Marsh Posté le 03-05-2005 à 20:07:06   

Reply

Marsh Posté le 04-05-2005 à 00:20:41    

Copie de l'aide Microsoft:

Citation :

Note   La fonction Shell exécute les autres programmes de manière asynchrone. Cela signifie qu'un programme lancé avec Shell peut ne pas s'exécuter entièrement avant que les instructions suivant la fonction Shell ne soient exécutées.


---------------
Si on vous donne une info qui marche, DITES-LE!!!! ------ Si vous trouvez seul, AUSSI, votre solution peut servir à d'autres! ------ Je dois la majorité de mes connaissances à mes erreurs!
Reply

Marsh Posté le 04-05-2005 à 19:30:55    

Je le sais ça. Mais justement, le programme que je lance avec la fonction shell() devrait s'éxécuter sans attendre la fin de ma fonction vba mais ce n'est pas le cas. Le programme que je lance s'éxécute lorsque ma fonction vba se termine ou qu'elle s'arrete à un point d'arret.

Reply

Marsh Posté le 04-05-2005 à 19:40:04    

Citation :

Cela signifie qu'un programme lancé avec Shell peut ne pas s'exécuter entièrement avant que les instructions suivant la fonction Shell ne soient exécutées.


en clair, il attendra la fin du sleep pour y aller.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed