Effectuant la fonction _GetIP() à travers un proxy, je trouvais que le temps de réponse était bien trop long (plusieurs minutes..)
J'ai alors fouillé l'UDF IniGet.au3 et il en suivit quelques questions :
Func _GetIP()
Local $aReturn, $bRead, $sRead
$bRead = InetRead("http://checkip.dyndns.org/") [color=#008000];Nous récupérons notre IP[/color]
$sRead = BinaryToString($bRead)
$aReturn = StringRegExp($sRead, '(?s)(?i)<body>Current IP Address: (.*?)</body>', 3)
If @error = 0 Then [color=#408000];si il n'y a pas eu d’erreur lors de l'InetRead on "retourne un tableau" non utilisé par la suite.. ?[/color]
Return $aReturn[0]
EndIf
$bRead = InetRead("http://automation.whatismyip.com/n09230945.asp") ; http://forum.whatismyip.com/f14/our-automation-rules-t241/ [color=#408000]Ici nous allons de nouveau récupérer notre IP sur un autre site ?? Voila l’explication d'un temps de réponse important ? [/color]
$sRead = BinaryToString($bRead)
If @error Then
Return SetError(1, 0, -1)
EndIf
Return $sRead
EndFunc ;==>_GetIP
Pour essayer j'ai mis en commentaire cette deuxième recherche d'IP sans rencontrer de problème lors de le re-éxecution de _GetIP(). Par bonne fois je dirais que le temps de réponse était meilleurs mais rien de flagrant.
Modifié en dernier par yohan8 le mar. 27 août 2013 09:17, modifié 1 fois.
Le 2ème test ne se fait que si @error<>0
Si @error=0 le Return te fait sortir de la fonction en retournant la valeur contenue dans $aReturn[0] (1ère ligne du tableau $aReturn)
" L'échec est le fondement de la réussite. " (Lao-Tseu ) " Plus ça rate, plus on a de chances que ça marche " (les Shadoks )