Page 1 sur 1

[R] Problème Get IP

Posté : mer. 27 oct. 2010 09:23
par Jerome
Coucou,

Je pose une question pour une fois car je n'arrive pas à trouver pourquoi sa fait sa...

Je m'amusait a refaire un code, mais en changeant un input par un IP.
Voici le code :
► Afficher le texte

Je n'arrive pas à savoir pourquoi quand je ré-affecte ma variable $IPAddress1 sur $i, elle change ...
Du coup impossible de continuer mon script et donc de faire le ping...

Si quelqu'un à une idée du pourquoi du comment...





Jérôme

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:40
par Iste
Roh, et $IPAddress1, c'est l'id du control ou l'ip ? :)

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:42
par Jerome
Les deux mon général :

Code : Tout sélectionner

$IPAddress1 = _GUICtrlIpAddress_Create($Form1, 96, 400, 130, 21)
$IPAddress1 = _GUICtrlIpAddress_Get($IPAddress1)

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:45
par Iste
J'voulais juste faire marcher ton cerveau voyons,

Code : Tout sélectionner

$IPAddress1 = _GUICtrlIpAddress_Create($Form1, 96, 400, 130, 21)
-> $IPAddress1 contient l'id du controle

Code : Tout sélectionner

$IPAddress1 = _GUICtrlIpAddress_Get($IPAddress1)
-> $IPAddress1 contient une ip

arf ! on a perdu l'id du control !

Solution : changer le nom de $IPAddress1 dans la fonction
► Afficher le texte

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:49
par Jerome
Viii, j'ai compris et j'avais modifier.

Problème, sa fait toujours pas ce que je veux xD.

Je fait le

Code : Tout sélectionner

For $i = $IPAddress1lol To $IPAddress2lol
        MsgBox("","",$i & @CRLF & $IPAddress1lol & @CRLF & $IPAddress2lol)
    Next
Pourquoi j'ai $i=192.168
$IPAddress1lol = 192.168.120.102
$IPAddress2lol = 192.168.120.105


Du coup pas possible de faire mon ping en boucle dans le for...





Jérôme

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:52
par Tlem
@Iste
Je pense que c'est voulu.

Je dirait plutôt, croyez vous vraiment que ceci peut fonctionner :

Code : Tout sélectionner

    For $i = 192.168.120.102 To 192.168.120.105
        MsgBox("","",$i)
    Next
Vous devez décomposer votre adresse IP et ne modifier que la dernière partie. ;)

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:53
par Jerome
Je sait que sa ne peut pas fonctionner, vu que c'est pas possible d'avoir des ".".

y'a t'il une autre solution au problème ou une fonction qui puisse faire sa avec l'IP ?

Edit : En gros du stringsplit des 4 valeurs entre chaque "." ?


Jérôme

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 09:55
par Iste
En effet, j'avais remarqué le For sans me poser plus de question.

Je crois que pour ce problème, que je vais quand meme essayer de résoudre, je pense qu'on devra faire une boucle custom, le For étant trop standard.

Un while avec une condition de sorti sera de mise, en gros

Code : Tout sélectionner

$ip = $adress1

While 1
    ;code
    $ip += 1 ; a faire toi meme :)
    If $ip > $adress2 Then ExitLoop
WEnd
la j'ai un rdv alors je reste pas plus :) bonne chance !

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 10:08
par Tlem
Ceci suffira largement :

Code : Tout sélectionner

Func ActionButton1()
    $IPAddress1 = StringSplit(_GUICtrlIpAddress_Get($IPAddress1), ".")
    $IPAddress2 = StringSplit(_GUICtrlIpAddress_Get($IPAddress2), ".")

    For $i = $IPAddress1[4] To $IPAddress2[4]
        MsgBox("","",$IPAddress1[1] & "." & $IPAddress1[2] & "." &$IPAddress1[3] & "." & $i)
    Next

EndFunc ;==>ActionButton1

Re: [..] Problème Get IP

Posté : mer. 27 oct. 2010 10:17
par Jerome
Coucou,


Merci Tlem pour ce bout de code.

Perso j'était partit sur un truc un peu plus violent :

Code : Tout sélectionner

 $IPAddress11 = _GUICtrlIpAddress_Get($IPAddress1)
    $IPAddress22 = _GUICtrlIpAddress_Get($IPAddress2)
    $ArrayIPAddress11 = StringSplit($IPAddress11, ".")
    $ArrayIPAddress22 = StringSplit($IPAddress22, ".")
    $11 = $ArrayIPAddress11[1]
    $12 = $ArrayIPAddress11[2]
    $13 = $ArrayIPAddress11[3]
    $14 = $ArrayIPAddress11[4]
    $21 = $ArrayIPAddress22[1]
    $22 = $ArrayIPAddress22[2]
    $23 = $ArrayIPAddress22[3]
    $24 = $ArrayIPAddress22[4]
 



Merci ;)



Jérôme