AutoIt Français

Nouveau forum : http://www.autoitscript.fr/
 
AccueilFAQRechercherS'enregistrerMembresGroupesConnexionhttp://www.autoitscript.fr

Partagez | 
 

 Rechercher un texte sur une page

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
kikilabanane
Débutant
Débutant


Nombre de messages : 5
Date d'inscription : 26/02/2007

MessageSujet: Rechercher un texte sur une page   2007-02-26, 14:14

Bonjour,

Dans le but de vérifier si une éxécution c'est bien passé ou non, je souhaiterais savoir s'il est possible, dans une fenêtre Windows contenant du texte, de vérifier la présence du mot "Failure" ?
En effet dans ma fenêtre windows se trouve une fenêtre "debug" qui indique le déroulement de l'éxécution et donc si tout c'est bien passé ou non.
Je suis débutant et je n'ai pas trouvé de fonction AutoIt permettant la recherche de mot dans une fenêtre texte.

Merci pour votre aide.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
TerminAdminAtor
Admin
Admin


Nombre de messages : 234
Date d'inscription : 22/10/2006

MessageSujet: Re: Rechercher un texte sur une page   2007-02-27, 03:29

Salut,

oui c'est faisable:
[code]WinActive
Checks to see if a specified window exists and is currently active.

WinActive ( "title" [, "text"] )[/code]
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://autoit-fr.realbb.net
kikilabanane
Débutant
Débutant


Nombre de messages : 5
Date d'inscription : 26/02/2007

MessageSujet: Re: Rechercher un texte sur une page   2007-02-27, 17:53

Merci.
J'ai testé et effectivement ça marche mais dans mon cas précis il ne me reconnait pas le mot que je lui demande.
Voici un screenshot de mon ecran.
[url=https://servimg.com/image_links.php?img_name=window10.jpg]https://servimg.com/image_links.php?img_name=window10.jpg[/url]
Si j'essaie avec des mots comme "Output", "Package" ça marche mais il ne me prend pas "Failure" ou "Failed", texte contenu dans la "sous-fenetre" Output.

Voici une partie de mon script de test :
WinActivate("Change Synergy First Import (Running) - Microsoft Visual Studio")
If WinActive("Change Synergy First Import (Running) - Microsoft Visual Studio", "Failure") Then
MsgBox(0, "", "Word found")
Else
MsgBox(0, "", "Word not found")
EndIf

J'ai également tenté en considérant "Output" comme une fenêtre => WinActive("Output","Failure") Then ... Pas mieux... il me dit "Word not found"

[img]file:///I:/Window.JPG[/img]
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
TerminAdminAtor
Admin
Admin


Nombre de messages : 234
Date d'inscription : 22/10/2006

MessageSujet: Re: Rechercher un texte sur une page   2007-02-28, 01:21

Désolé je ne peux pas voir l'image

[quote]Could not display image[/quote]
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://autoit-fr.realbb.net
Drakulv
Débutant
Débutant


Nombre de messages : 2
Age : 39
Date d'inscription : 27/02/2007

MessageSujet: Re: Rechercher un texte sur une page   2007-02-28, 11:09

Peux-tu faire une sélection dans ta fenêtre Output ? Je ne sais pas si on peut effectuer une recherche dans une fenêtre de texte ne pouvant avoir le focus.

(Drakulv se demande s'il est clair :D)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
TerminAdminAtor
Admin
Admin


Nombre de messages : 234
Date d'inscription : 22/10/2006

MessageSujet: Re: Rechercher un texte sur une page   2007-02-28, 13:38

Pis normalement si le titre et le texte sont donnés pas [color=RoyalBlue]autoit window info[/color] ça devrait marcher, ça m'a jamais déçu jusqu'à maintenant.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://autoit-fr.realbb.net
kikilabanane
Débutant
Débutant


Nombre de messages : 5
Date d'inscription : 26/02/2007

MessageSujet: Re: Rechercher un texte sur une page   2007-03-01, 11:14

Merci de vos réponses.
J'ai placer le fameux screenshot qui n'était pas visible à un autre endroit : [url=http://screenshot.over-blog.net/]http://screenshot.over-blog.net/[/url]
Ca devrait mieux marcher.

Pour ceux qui connaitraient (j'avais pas précisé), je bosse sous Microsoft Visual Studio. Lorsque je debug le code, il y a une fenetre "Output" qui apparait et qui donne des commentaires sur le déroulement de l'éxécution.
Dans mon cas, je souhaiterais détecter que ça plante : la fenêtre "Output" se termine par "finished: Failure."

Cette fenêtre "Output" peut se détacher du reste et je l'ai bien détecté avec autoit window info. Malheureusement si je fais un WinActivate("Output"), le focus ne vient pas sur cette "speudo" fenêtre. (J'ai également vu qu'il existait une fonction ControlFocus que j'aurais pu utiliser mais autoit window info ne me donne par de controlID pour la fenêtre "Output", ce qui me fait penser que cette fenêtre "Output" ne peut pas être considérer comme une vraie fenêtre Windows).

Le workaround actuel que j'ai imaginé et de faire un click de souris dans la fenêtre "Output", de faire un CtrlA puis un CtrlV dans une fenêtre Notepad et faire la recherche dans Notepad, mais c'est un peu lourd.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
kikilabanane
Débutant
Débutant


Nombre de messages : 5
Date d'inscription : 26/02/2007

MessageSujet: Re: Rechercher un texte sur une page   2007-03-02, 13:05

Quelques nouvelles concernant mon problème...
J'ai réussi à activer la fenêtre "Ouput" et lui attribuer le focus moyennant qu'il faut que je la détache de la fenêtre générale de Visual Studio pour en faire une fenêtre indépendante.
Ensuite, je peux faire un WinActivate("Output","Output Window"), Output Window m'a été donné par AutoIt Window Info comme étant du Visible Window Text.

Par contre, je n'arrive toujours pas à vérifier le texte contenu dans cette fenêtre : WinActivate("Output","Failure") me retourne toujours False :-(
Je ne comprends pas pourquoi ...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
TerminAdminAtor
Admin
Admin


Nombre de messages : 234
Date d'inscription : 22/10/2006

MessageSujet: Re: Rechercher un texte sur une page   2007-03-02, 15:07

Ta essayé :WinGetText


Retrieves the text from a window.


WinGetText ( "title" [, "text"] )
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://autoit-fr.realbb.net
kikilabanane
Débutant
Débutant


Nombre de messages : 5
Date d'inscription : 26/02/2007

MessageSujet: Re: Rechercher un texte sur une page   2007-03-02, 16:03

WinGetText me retourne seulement :
Output
MsoDockTop
Output Window

Rien sur tout le blabla qui est à l'intérieur.

Au fait, plutot que de faire un copier coller vers Notepad, j'ai optimiser avec le bout de script suivant :
- je continue à faire le copier (en simulant un click dans la fenêtre Output) puis je recupère le texte dans une variable grace à la fonction ClipGet()

$bak = ClipGet()
$result = StringInStr($bak, "finished: Failure")

If $result = 0 Then
MsgBox(0, "Info", "Debug finished with Success")
Else
MsgBox(0, "Info", "Debug finished with Failure(s)")
EndIf


Finalement, il y juste ce click de souris qui me gène car j'ai peur que suivant la resolution, la taille de la fenêtre ou autre, le click ne se fasse pas au bon endroit et toute la suite tombe à l'eau.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Rechercher un texte sur une page   Aujourd'hui à 22:43

Revenir en haut Aller en bas
 
Rechercher un texte sur une page
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» texte pied de page
» Centrer le texte sur la page d'accueil
» Mettre un texte sur la page d'accueil
» Texte Defilant message page d'accueil
» probléme de décalage de texte dans ma page d'accueill

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
AutoIt Français :: AutoIt v3 :: Entraide-
Sauter vers: