Attente d'ouverture de plusieurs feêtres : Extrèmement urgent (Projet Entr.)

Fredquipédaledurdanslasemoule - 29 oct. 2001 à 23:02
PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007 - 16 déc. 2001 à 14:56
Bonjour à tous,
Voila mon problème : je désire faire de la reprise de données automatique à partir d'un fichier texte. Pour faire un test simple, je lance Excel à partir de VB avec la fonction Shell puis activation de la fenêtre avec AppActivate et envoie de mes données avec SendKeys. Jusque là aucun problème. Là où ça se corce, c'est lorsque je lance une autre appli dont l'ouverture est beaucoup plus longue : les données sont envoyées aussitôt et perdues. Je recherche une méthode qui me dirait que la fenêtre sur laquelle je veux envoyer mes données est active.
Et dans le cas où une fenêtre appelle une autre, comment détecter que la deuxième a fini de charger ? (ex : reprise de données sur un formulaire Access et appel d'un autre formulaire, reprise de données et sauvegarde)
Faut il rechercher le code ID de la tâche, rechercher dans la base de registre le code de la fenêtre active ??? Aucune idée !!! Merci de me donner un coup de main.
A+
FRED

1 réponse

PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007
16 déc. 2001 à 14:56
Il te faut utiliser la fonction API GetActiveWindow (après l'avoir déclarer). Cette fonction renvoie le handle de l'appli active, tu n'as quà comparer cette valeur avc la valeur retournée par la fonction shell dans un timer par exemple.
Pour + d'infos réponds à ce message
@+
0
Rejoignez-nous