[R] Recherche de processus.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

[R] Recherche de processus.

#1

Message par jwelcsbe »

bonjour à tous !

C'est encore moi pour vous soumettre ma nouvelle requète.
J'ai pris gout à Autoit depuis 1 semaines et je veux tout faire avec :D

Voila mon nouveau projet !
Il est intéressant, vraiment ;)

• La première étape consiste à se loguer sur un site internet, local.

http://imageshack.us/photo/my-images/843/acceuiloc.png/


• On arrive sur la page d'acceuil.

Image

• On clique sur Applications bureautique

http://ctxmgmt/Citrix/AccessPlatform/si ... reautiques

• Le plus dur maintenant. On doit cliquer sur 'Filemaker 6b s2'

Et là, par magie (ou pas) un processus se lance !

Image

wfica32, il apparait au bout de quelques secondes.

Le but du script est d'arrivé à voir si il est bien là ;D
Si oui, on le marque dans un fichier, en mettant '1' par exemple.
Puis on tue le processus.
Si non on marque '0' dans ce même fichier.

Pensez vous que ce script est réalisable ?
Je vous remercie de toute l'attention que vous y porterez !

Bien cordialement,
:wink:



____________

J'y ai déjà travailler, ne pensez pas que je fait rien :(

Code : Tout sélectionner

#include <GUIConstants.au3>
#include <IE.au3>


; variables qui peuvent être déterminées dans une gui
$scriptvisible = 1
$username = ""
$password = ""

; moteur du script
$wb = _IECreate ("http://ctxmgmt/Citrix/AccessPlatform/auth/login.aspx", 0, $scriptvisible, 1, 1)
$identif = _IEFormGetObjByName ($wb, "CitrixForm")
$login = _IEFormElementGetObjByName ($identif , "user")
$mdp = _IEFormElementGetObjByName ($identif , "password")
Local $oSubmit = _IEGetObjByName($wb, "submitExample")
_IEFormElementSetValue ($login, $username)
_IEFormElementSetValue ($mdp, $password)
$handle = ControlGetHandle("Citrix", "", "[CLASS:Internet Explorer_Server; INSTANCE:1]")
ControlFocus("Citrix", "", $handle)
sleep(500)
ControlSend("Citrix", "", $handle , "{tab}")
sleep(500)
ControlSend("Citrix", "", $handle , "{enter}")
sleep(500)
_IELoadWait ($wb)



_IENavigate($wb , "http://ctxmgmt/Citrix/AccessPlatform/site/default.aspx?CTX_CurrentFolder=\Applications%20Bureautiques", 0)

sleep(1000)

_IELinkClickByText ($wb, "http://ctxmgmt/Citrix/AccessPlatform/site/launcher.aspx?CTX_Application=Citrix.MPS.App.CTXCITRIX.Filemaker%206b%20s2&LaunchId=1335466949924")
Modifié en dernier par jwelcsbe le mar. 01 mai 2012 15:49, modifié 1 fois.
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..] Recherche de processus.

#2

Message par TT22 »

Pour savoir si un processus existe, c'est ProcessExists() qu'il te faut.
Cordialement,
TT22
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#3

Message par jwelcsbe »

Merci ;)

Mais le plus dur est d'arrivé à cliquer sur 'FileMaker', je ne sais pas du tout comment faire.
Il n'a pas d'url, rien.
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..] Recherche de processus.

#4

Message par TT22 »

jwelcsbe a écrit :le plus dur est d'arrivé à cliquer sur 'FileMaker'
Si il est toujours à la même position, tu peux utiliser un MouseClick()
Cordialement,
TT22
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#5

Message par jwelcsbe »

Non

Code : Tout sélectionner

Mouseclick()
est une mauvaise option, trop imprécis pour ce script la :/

EDIT:

Je pensais plus à une fonction qui récupère l'ID, en html ?
Je ne sais pas si c'est possible.
J'essaie de trouver des moyens :(

EDIT 2 : Je pense avoir la fin, celle qui cherche le processus et qui créer le fichier, qu'en dites vous ?

Code : Tout sélectionner

;=============================
;SECONDE PARTIE DU PROGRAMME;
;=============================

global $archive = "Citrix"
$file=Fileopen($archive, 2) ; 2  =  ERASE MODE

; CHECK DU PROCESSUS

$process="wific32"
msgbox(0, "Process" , $process)
Next
If ProcessExists($process) Then
   FileWrite($file, "1")  ; SUCCESS
   ProcessClose($process) 
Else
   FileWrite($file, "0") ; ECHEC
EndIf
Modifié en dernier par jwelcsbe le ven. 27 avr. 2012 20:35, modifié 1 fois.
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#6

Message par blacksoul305 »

Y a t-il moyen d'avoir le lien vers la page ?

(celui que tu as donné ne marche pas)
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#7

Message par jwelcsbe »

Non, c'est en local.

Je suis désolé :(

Je pense que le bout de code relatif est celui-ci :

Code : Tout sélectionner

 </div>

        <div class="iconView">
            <a  id="Citrix.MPS.App.CTXCITRIX.Filemaker00206b0020s1"
                href="launcher.aspx?CTX_Application=Citrix.MPS.App.CTXCITRIX.Filemaker%206b%20s1" onClick="resetSessionTimeout();clearFeedback();addCurrentTimeToHref(this,'launcher.aspx?CTX_Application=Citrix.MPS.App.CTXCITRIX.Filemaker%206b%20s1','LaunchId');launch(this); return false;" onMouseDown=" addCurrentTimeToHref(this,'launcher.aspx?CTX_Application=Citrix.MPS.App.CTXCITRIX.Filemaker%206b%20s1','LaunchId');"
                class="iconLink"
                title="Filemaker 6b s1"
             ><img  src="icons.aspx?size=normal&id=MHEIJGHKAGPCJHIFKHMMCEOGKGMPBDMA" alt="Filemaker 6b s1" title="Filemaker 6b s1" ><br><span>Filemaker 6b s1</span><img
                                                                                id="spinner_Citrix.MPS.App.CTXCITRIX.Filemaker00206b0020s1"
                                                                                class="spinner"
                                                                                width="11"
                                                                                height="11"
                                                                                src="../media/Transparent16.gif" alt=""
            ></a>
        </div>
non ?
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#8

Message par blacksoul305 »

Hum, je pense pas que je vais être utile car c'est bien au delà de mes connaissances.

En espérant que l'on vienne à ton aide !
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#9

Message par jwelcsbe »

En soit, c'est bien cliquer sur un bouton, connaissant l'ID, non ?
Je me trompe ?
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#10

Message par blacksoul305 »

Oui, mais en voyant le code de la page, j'ai du mal à voir le bouton en question.

EDIT : Je crois être un abruti fini :

Code : Tout sélectionner

id="Citrix.MPS.App.CTXCITRIX.Filemaker00206b0020s1"
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#11

Message par jwelcsbe »

Voilà, c'est celui-ci.

Ce que je ne sais pas faire, c'est un "lien" qui va cliquer sur ce bouton, dans mon script :D
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#12

Message par blacksoul305 »

Tu devrais t'inspirer du script que tu es arrivé à faire avec mikell. Le bouton pour pouvoir se connecter avait bien un ID.

De plus :

Code : Tout sélectionner

If ProcessExists("Chrome") Then MsgBox(64,"lol","lol")

;=============================
;SECONDE PARTIE DU PROGRAMME;
;=============================

global $archive = "Citrix"
$file=Fileopen($archive, 2) ; 2  =  ERASE MODE

; CHECK DU PROCESSUS

$process="wific32[color=#FF0000].exe[/color]" ; tu as oublié la fin
msgbox(0, "Process" , $process)
[color=#FF0000]Next[/color] ; à retirer (pas de boucle For...Next) à moins que le début de la boucle se trouve dans la première partie du code.
If ProcessExists($process) Then
   FileWrite($file, "1")  ; SUCCESS
   ProcessClose($process) 
Else 
   FileWrite($file, "0") ; ECHEC
EndIf
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#13

Message par jwelcsbe »

Merci des corrections, je me suis inspiré d'un code vue sur le forum anglais.

Pourquoi tu fais cela ?

Code : Tout sélectionner

If ProcessExists("Chrome") Then MsgBox(64,"lol","lol")
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#14

Message par blacksoul305 »

jwelcsbe a écrit :Merci des corrections, je me suis inspiré d'un code vue sur le forum anglais.

Pourquoi tu fais cela ?

Code : Tout sélectionner

If ProcessExists("Chrome") Then MsgBox(64,"lol","lol")
Oups, désolé. C'est que j'ai fais un test de mon côté pour voir si le fait d'enlever le ".exe" à la fin d'un processus n'empêcher pas de le détecter. Comme ça que j't'ai corrigé.

Pour les "lol", c'est juste une question d'habitude haha !
Étudiant en 2ème année de Licence Informatique.
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Recherche de processus.

#15

Message par ani »

bonsoir,
On clique sur L'image en question.

Code : Tout sélectionner

_IEimgclick($oIE, "Filemaker 6b s1", alt)
bonne continuation ;)
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#16

Message par blacksoul305 »

Je poste quand même mon truc, comme ça on pourra me corriger si c'est faux.

Je pensais à cela :

Code : Tout sélectionner

$FileMaker = _IEGetObjById($wb,"Citrix.MPS.App.CTXCITRIX.Filemaker00206b0020s1") ; on place l'ID du bouton dans la variable
_IEFormSubmit($FileMaker) ; "Submit" m'a fait penser à envoyer
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#17

Message par jwelcsbe »

:shock:

Si sa marche, je me tape la tête contre les murs. :roll:

j'ai passé toute la journée à m'embêter à faire un truc compliquer :|

Je test de ce pas.

EDIT : Merci Black, je test ton code aussi.

Je vous tient au courant promptement.

EDIT 2 : Annie, ton bout de code ne marche pas, il doit me manquer quelque chose. Ou peut-être que je ne sais pas l’intégrer. :/

EDIT 3 : Black, ton code ne marche pas non plus :?
Modifié en dernier par jwelcsbe le ven. 27 avr. 2012 21:11, modifié 1 fois.
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Recherche de processus.

#18

Message par blacksoul305 »

Tu n'as pas tout simplement oublié de remplacer

Code : Tout sélectionner

_IEimgclick($oIE, "Filemaker 6b s1", alt)
par

Code : Tout sélectionner

_IEimgclick([color=#FF0000]$wb[/color], "Filemaker 6b s1", alt)
On sait jamais, les erreurs d’inattentions arrivent vite !

EDIT : (par rapport à mon code proposé) Dommage :(
Modifié en dernier par blacksoul305 le ven. 27 avr. 2012 21:13, modifié 1 fois.
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
jwelcsbe
Niveau 2
Niveau 2
Messages : 24
Enregistré le : ven. 20 avr. 2012 21:34
Localisation : CANADA
Status : Hors ligne

Re: [..] Recherche de processus.

#19

Message par jwelcsbe »

Non, j'ai bien fait cette manip.
J'ai bien remplacé.
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Recherche de processus.

#20

Message par ani »

change $oIE par $wb, je n'avait pas visionner le code au3

black le ieFormsubmit ne fonctionnera que pour les Formes
faudra le remplacer par le click :) ~ me semble par $FileMaker.click

je par tester et gueuler sur le voisinage ;)
Répondre