Page 2 sur 2

Re: [..] Recherche de processus.

Posté : ven. 27 avr. 2012 21:18
par jwelcsbe
BINGO !

Sa marche, reste plus qu'à l'adapter.

Mais sinon la commande est bonne.

Merci vous deux ;)

Re: [..] Recherche de processus.

Posté : ven. 27 avr. 2012 21:37
par mikell
ani, faut pas des petits machins pour encadrer le alt ? normalement

Code : Tout sélectionner

_IEimgclick($wb, "Filemaker 6b s1", "alt")
devrait marcher...

Re: [..] Recherche de processus.

Posté : ven. 27 avr. 2012 21:52
par jwelcsbe
Sa marche mieux maintenant :D

Re: [..] Recherche de processus.

Posté : mar. 01 mai 2012 15:37
par jwelcsbe
Je viens vous présenter le script terminé.

Code : Tout sélectionner

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

Global $scriptvisible = 1
Global $username = "XXX"
Global $password = "XXX"
global $archive = "C:\Citrix.txt"
global $process="wfica32.exe"

$file=Fileopen($archive, 2) ; 2  =  ERASE MODE
_Check()
Switch @error
    Case 0
       FileWrite($file, "3")  ; SUCCESS
       ProcessClose($process)
    Case 1
       FileWrite($file, "0")  
    Case 2
       FileWrite($file, "1")  
    Case 3
       FileWrite($file, "2")  
EndSwitch
FileClose($file)


Func _Check()
;=============================
;PREMIERE PARTIE DU PROGRAMME;
;=============================

$wb = _IECreate ("http://ctxmgmt/Citrix/AccessPlatform/auth/login.aspx", 0, $scriptvisible, 1, 1)
If @error Then 
   _IEAction ($wb, "quit")
   Return SetError(1)   ; peut pas se connecter à la page de départ
EndIf

$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)
;sleep(500)
_IENavigate($wb , "http://ctxmgmt/Citrix/AccessPlatform/site/default.aspx?CTX_CurrentFolder=\Applications%20Bureautiques", 1) ; PAGES DES APPLICATIONS.
sleep(200)

Local $pageApp = _IEBodyReadHTML ($wb)
If not StringInStr($pageApp, "Filemaker 6b s1") Then 
   _IEAction ($wb, "quit")
   Return SetError(2)  ; pas trouvé l'image donc page non atteinte
EndIf

_IEimgclick($wb, "Filemaker 6b s1", "alt")
If @error Then 
   _IEAction ($wb, "quit")
   Return SetError(3)  ; erreur de clic sur l'image
EndIf

sleep(40000)
;=============================
;SECONDE PARTIE DU PROGRAMME;
;=============================
; CHECK DU PROCESSUS

If not ProcessExists($process) Then 
   _IEAction ($wb, "quit")
   Return SetError(3)
EndIf
sleep(2000)

_IEAction ($wb, "quit")   ; ferme IE
EndFunc
Il effectue donc toutes mes attentes et petit plus, il est capable de gérer les erreurs et de retourner différentes valeurs dans le même fichier texte.

je remercie toutes les personnes qui m'ont aidés à finaliser ce travail.

Santé :mrgreen: