Cherche quelque chose qui peut remplacer api 'sleep'
bikette005
Messages postés11Date d'inscriptiondimanche 18 avril 2004StatutMembreDernière intervention16 février 2005
-
16 févr. 2005 à 12:35
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 2011
-
16 févr. 2005 à 18:38
Bonjour a tous
mon probleme est simple mais compliqué à expliquer:
je fais un prg vb6 qui simule les frappes d'un utilisateur quelconque sur une application (shell + sendkeys). Dans cette application j'exécute des macros qui mettent un certain temps pour s'exécuter. Donc actuellement j'ai utilisé l'api sleep afin de faire une pause dans mon code (sinon erreur argument incorrect ou qqchose du genre). Mais le probleme c'est que le temps d'exécution des macros est variable (selon le pc, les ressouces deja utilisees ect...) il y a donc des temps morts dans mon appli ou alors elle plante parce qu'elle n'a pas assez de temps pour executer les commandes. j'aimerais savoir si il y a un moyen de detecter la fin du traitement pour continuer le code vb?!?! ou autre chose du moment que ca résou mon pbl!!!
j'espere avoir ete assez claire!?!?
bikette005
Messages postés11Date d'inscriptiondimanche 18 avril 2004StatutMembreDernière intervention16 février 2005 16 févr. 2005 à 14:37
reponse à nhervagault:
j'ai deja essayé avec des timers et revient au meme mais pas avec les fichiers dont tu parles mais je ne sait pas comment ca marche!!!
reponse a casy:
j'assaie ta methode! je reviens pour dire si ca me convient.
bikette005
Messages postés11Date d'inscriptiondimanche 18 avril 2004StatutMembreDernière intervention16 février 2005 16 févr. 2005 à 15:04
cette methode n'execute pas le code suivant le lancement de l'application. pourkoi!?!?
sinon est-ce que nhervagault tu pourrais m'eclairer sur ta methode avec les fichiers temp. Il faut savoir aussi que mes macros je les lance a partir de sendkeys donc j'ai de faire les pauses aussi entre deux sendkeys mais je ne sait pas quel evenement je peu tester pour continuer le code.
Merci
bk005
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 16 févr. 2005 à 15:28
bikette005 ce code marche très bien depuis
des années, il me sert dans toute une série de softs pour ouvrir le
manuel d'utilisation du logiciel (fichier PDF), et bloquer le logiciel tant que l'opérateur ne ferme pas le manuel.
Evidemment ce code ne marchera que si tu lance le second logiciel (tes
macros) par la commande shell, et que si la commande shell s'est
exécutée correctement, càd quand pid et différent de zéro.
Si tu maitrise les API et que tu peux les utilisées dans tes macros, tu
peux regarder aussi du coté des flags avec les API CreateEvent,
SetEvents et toujours WaitForSingleObject
Le but : ton soft se bloque sur l'attente d'un flag avec WFSO, ta macro
lorsque elle se termine, leve le flag avec SetEvent, et libère ton soft
qui reprend sa course vers la gloire .
<hr size="2" width="100%">Si le cerveau était assez simple pour que nous puissions le comprendre,
nous serions assez bête pour ne pas le comprendre malgré tout.