J'ai écrit un outil C# qui simule un utilisateur interagissant avec un environnement Windows 7. Cela fonctionne sauf lorsque vous interagissez avec un couple d'applications flash en ligne. Les mouvements de la souris et les clics sont générés, mais les applications Flash ne les reçoivent pas. Je pense que j'ai besoin de générer des événements de souris de niveau inférieur, mais je ne peux pas le confirmer.Problème d'automatisation de la souris et d'interaction avec les applications Flash
J'ai essayé plusieurs mécanismes différents:
[DllImport("user32.dll")]
static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
[DllImport("user32.dll", SetLastError = true)]
private static extern uint SendInput(uint nInputs, INPUT[] pInputs, int cbSize);
Quelqu'un at-il rencontré ce problème? Des idées comment je peux générer des événements de souris qui s'inscriraient avec une application Flash?
Mise à jour: Il semble que les applications flash reçoivent un clic de souris. Leurs animations de clic sont présentées lorsqu'un clic de souris est envoyé par l'application C#. Pourtant, il ne se passe rien, même si l'animation du clic de souris de l'application Flash s'affiche.
Les applications flash dans Windows Internet Explorer? Gardez à l'esprit que le mode protégé (http://www.microsoft.com/india/windows/windows-vista/features/IE7-protected-mode.aspx) signifie que les messages de fenêtre vers/depuis le processus IE sont affectés, être ce qui cause le problème. Est-ce que des événements de la souris vers des éléments de la page qui ne sont pas * le * contrôle flash fonctionnent? – Rob
Je l'ai testé dans IE8 et le dernier Chrome. Dans chacun, j'ai envoyé des événements de souris à des liens non-Flash sur quelques pages et ils ont été traités par les navigateurs. – TERACytE
qu'est-ce que vous essayez de faire spécifiquement à travers le flash? il y a des problèmes d'interaction spécifiques avec les navigateurs, donc dans les bloqueurs de fenêtres contextuelles construites, etc., les tentatives d'ouverture de pages seront supprimées, sauf après une interaction de l'utilisateur. Je ne suis pas sûr de la façon dont il traite cela, mais il se peut que vos clics ne soient pas enregistrés en tant qu'entrée «humaine», donc bloqués. – longstaff