Wiki - Forum Neuf - Recherche - ADSL
Version complète: Outil De Test Pour Mesurer Les Deconnections
Forums SFR NeufBox > Forums SFR > Forums ADSL SFR > Problèmes Avec Votre Connexion


loic69
Bonjour
Je recherche un outil me permettant d'évaluer le nombre de déconnection de ma ligne adsl (suite à des problèmes sur ma ligne). J'utilise la grenouille mais cette dernière ne permet pas de verifier les deconnections...
Je monte donc au creneau et veux donc les chiffrer exactement (nombres et heures...)

Dans l'idéal, il faudrait un outil qui ping en permanence (toutes les 10 sec) une IP quelconque et qui indique le résultat dans un log... Il faudrait aussi pouvoir remonter l'adresse IP publique du modem.
En fait un script devrait suffire, je ne pense pas qu'il y a besoin d'un soft particulier...

(Je possède un routeur donc pas possibilité d'utiliser ADSL autoconnect...)
Jeumeu
Moi, j'ai une demande connexe; j'ai un routeur aussi, et j'ai remarqué qu'il m'arrivait de changer d'adresse IP externe (style après 20 jours).

Je veux bien un "truc" qui puisse logger ça.

PS: Je post à la suite car cela me semble très proche de la demande de plcarette.

PS2 : sans vouloir jouer le vieux prof : en français, on écrit connexion (et déconnexion)
mickey19
Bonsoir,

Sujet déjà abordé, tu (edit : vous biggrin.gif ) devrais (devriez) trouver ton (votre) bonheur ici laugh.gif
Jeumeu
Effectivement,

Merci mickey19.

Beaucoup de sujets abordés dans ce forum et recherches difficiles sur ce sujet.
mickey19
Ah je me doute que c'est pas évident, mais vu que j'avais posté dedans, la recherche a été plus simple pour moi smile.gif Tiens j'ai vu d'ailleurs que j'ai dû écrire un co***rie : le routeur aurait besoin du démon syslog pour envoyer les infos vers un pc, et non de supporter snmp (j'ai mélangé ce dont j''avais besoin pour mrtg (snmp) et pour wallwatcher (syslog)... blush.gif )
loic69
Oui et Non
Je voudrais me passer de ce petit soft monip ou le soft de script.
Je suis en train d'ecrire un script VBS et je cherche comment obtenir l'IP publique du routeur directement en VBS...
Si quelqu'un à l'info...

Merci
mickey19
Vrai que c'est pas évident laugh.gif J'y connais pas grand chose en vbs (j'ai déjà fait mumuse 5 minutes avec, mais juste histoire de savoir un peu ce que c'est, je dois connaitre 3 instructions à tout casser "if then else" laugh.gif ) mais si tu t'y connais un peu, ceci pourra peut être t'aider...


CITATION
Function donneip() As String

donneip = form1.Inet1.OpenURL("http://testip.free.fr/ip.php")

End Function

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

PS : Il faut juste penser à rajouter le composant Inet (Microsoft Internet Transfer Control)


source : vbfrance.com
omegatron
Tiens, encore une question existentielle ?

Pourquoi ne pas essayer ceci ? http://www.bitsoft.se/products.htm#ShowIP
loic69
CITATION
Function donneip() As String

donneip = form1.Inet1.OpenURL("http://testip.free.fr/ip.php")

End Function

Ca doit être du VB et non du script VBS... La form1 me fait penser à ça...
loic69
Voici, un debut de script qui fonctionne. Il est un peu gourmand car il y a une boucle infinie sans tempo... Est il utile de mettre une tempo sachant que le modem se resynchronise vite ? Yahoo ne va peut etre pas être content de se faire pinger en permanence par les mêmes IP... Non ? On peut peut être mettre une tempo à 10 secondes...
Je n'ai pas trop le temps de cherche comment on fait une tempo en VBS... J'essayerai de l'ameliorer... J'ajouterais aussi, l'affichage dans le log de l'IP publique...
Si j'ai trop de galère en VBS, j'écrirais une petite appli en VB.NET ou C#.

Le voici :

CODE
machine1 = "www.yahoo.fr"
machine2 = "www.free.fr"
logfile = "D:\Deconnexion.log"

If machine1 = "" & machine2 = "" Then Return

Set MyFiles = CreateObject("Scripting.FileSystemObject")
If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
   
Do

    set ObjPing1 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine1&"'")
    For each obj1 in ObjPing1
 if obj1.StatusCode <> 0 or  IsNull(obj1.StatusCode) then
     ' la machine n'est pas connecté au réseau, on essaye avec la 2ème machine
     Set ObjPing2 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine2&"'")
     For each obj2 in ObjPing2
   If obj2.StatusCode <> 0 or  IsNull(obj2.StatusCode) then
       ' la 2ème machine n'est pas connecté au réseau !!!
       'MsgBox "Déconnecté"
       logfile.write("Déconnection le " & Date & " à " & Time & chr(13) & chr(10))
         End If
     Next
 End if  
    Next
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  
loic69
Ca marche plutôt bien...
Il faudrait par contre synthetiser les infos du fichier pour n'indiquer que la déconnexion et non pas tous les pings suivants qui échouent...
Dans le log suivant, j'ai eu en fait 2 déconnexions, une à 14:23 et l'autre à 15h41 !
On voit par contre que le temps de resynchronisation du modem est variable (15 secondes pour la 1ère et 40 secondes pour la seconde...)

CODE
Déconnection le 11/04/2005 à 14:23:46
Déconnection le 11/04/2005 à 14:23:49
Déconnection le 11/04/2005 à 14:23:52
Déconnection le 11/04/2005 à 14:23:55
Déconnection le 11/04/2005 à 14:23:58
Déconnection le 11/04/2005 à 14:24:01
Déconnection le 11/04/2005 à 14:24:04
Déconnection le 11/04/2005 à 14:28:04
Déconnection le 11/04/2005 à 15:05:14
Déconnection le 11/04/2005 à 15:41:46
Déconnection le 11/04/2005 à 15:57:57
Déconnection le 11/04/2005 à 15:58:00
Déconnection le 11/04/2005 à 15:58:03
Déconnection le 11/04/2005 à 15:58:06
Déconnection le 11/04/2005 à 15:58:09
Déconnection le 11/04/2005 à 15:58:12
Déconnection le 11/04/2005 à 15:58:15
Déconnection le 11/04/2005 à 15:58:18
Déconnection le 11/04/2005 à 15:58:21
Déconnection le 11/04/2005 à 15:58:24
Déconnection le 11/04/2005 à 15:58:27
Déconnection le 11/04/2005 à 15:58:30
Déconnection le 11/04/2005 à 15:58:31
Déconnection le 11/04/2005 à 15:58:31
Déconnection le 11/04/2005 à 15:58:31
Déconnection le 11/04/2005 à 15:58:33
Déconnection le 11/04/2005 à 15:58:34
Déconnection le 11/04/2005 à 15:58:34
Déconnection le 11/04/2005 à 15:58:36
Déconnection le 11/04/2005 à 15:58:37
Déconnection le 11/04/2005 à 15:58:37
Déconnection le 11/04/2005 à 15:58:37
Déconnection le 11/04/2005 à 15:58:39
Déconnection le 11/04/2005 à 15:58:40
loic69
Allé, nouvelle version avec la tempo reglable et log d'un evenement seulement à chaque déconnexion...

CODE
' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
tempo = 8      ' en secondes
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion

If machine1 = "" & machine2 = "" & logfile = "" Then Return

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    End If
End If

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")
If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
logfile.write(Chr(13) & chr(10) & "Démarrage du script VBS le " & Date & " à " & Time & chr(13) & chr(10))    
 
Do
    set ObjPing1 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine1&"'")
    For each obj1 in ObjPing1
 if obj1.StatusCode <> 0 or  IsNull(obj1.StatusCode) then
     ' la machine n'est pas connecté au réseau, on essaye avec la 2ème machine
     Set ObjPing2 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine2&"'")
     For each obj2 in ObjPing2
   If obj2.StatusCode <> 0 or  IsNull(obj2.StatusCode) then
       ' la 2ème machine n'est pas connecté au réseau !!!
       'MsgBox "Déconnecté"
       If connected = true Then
     logfile.write("Déconnection le " & Date & " à " & Time & chr(13) & chr(10))
     If debugmode = true Then
         MsgBox "Déconnecté Etape 2"
     End If
       End If
       connected = false
         Else
       connected = true
       If debugmode = true Then
     MsgBox "Connecté Etape 2"
       End If
         End If
     Next
 Else
     connected = true
     If debugmode = true Then
   MsgBox "Connecté Etape 1"
     End If
 End if  
    Next
    WScript.Sleep(tempo * 1000)
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  
mickey19
Mais où va-t-il chercher tout ça laugh.gif ???

J'avais préféré activer le démon syslog du routeur + wallwatcher sur le pc avec les filtres adéquats, je ne me sentais pas l'âme de faire un programme, et puis ça me semblait plus simple... en tout cas chapeau pour ton script smile.gif
edreams
chez moi ca marche pas. après compilation le .exe me renvoie des erreurs de "missing string quote"
loic69
CITATION
chez moi ca marche pas. après compilation le .exe me renvoie des erreurs de "missing string quote"

Ou la la...Pas besoin de compilation, c'est un script en Visual Basic !!!
J'ai oublié de préciser que je l'ai testé uniquement sous XP SP2 et qu'il utilise WMI pour pinguer les machines ou les serveurs...

Mode d'emploi :
Il suffit de prendre le code, de le copier dans un fichier texte et de le renomer en "deconnexion.vbs" par exemple. Seule l'extension est importante.
Pensez bien à vérifier le path sur le fichier de log dans les premières lignes du script...(Attention si vous n'avez pas de lecteur D !!!)

Aller, voici une mise à jour qui affiche l'IP publique (routeur ou non !) si elle change après chaque déconnexion...

CODE
' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
tempo = 5      ' en secondes
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""          ' IP publique (du routeur ou de la machine)

If machine1 = "" & machine2 = "" & logfile = "" Then Return

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    End If
End If

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")
If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
logfile.write(Chr(13) & chr(10) & "Démarrage du script VBS le " & Date & " à " & Time & Chr(13) & chr(10))    
logfile.write("IP = " & IP & Chr(13) & chr(10))
Do
    set ObjPing1 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine1&"'")
    For each obj1 in ObjPing1
 if obj1.StatusCode <> 0 or  IsNull(obj1.StatusCode) then
     ' la machine n'est pas connecté au réseau, on essaye avec la 2ème machine
     Set ObjPing2 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine2&"'")
     For each obj2 in ObjPing2
   If obj2.StatusCode <> 0 or  IsNull(obj2.StatusCode) then
       ' la 2ème machine n'est pas connecté au réseau !!!
       'MsgBox "Déconnecté"
       If connected = true Then
     logfile.write("Déconnection le " & Date & " à " & Time & chr(13) & chr(10))
     If debugmode = true Then
         MsgBox "Déconnecté Etape 2"
     End If
       End If
       connected = false
         Else
       ' Si on sort d'une déconnexion, on logue l'IP si elle est différente...
       If connected = false Then
     newIP = GetIP()
     If IP <> newIP Then
         IP = newIP
         logfile.write("IP = " & IP & Chr(13) & chr(10))
     End If
       End If
       
       connected = true
       
       If debugmode = true Then
     MsgBox "Connecté Etape 2"
       End If
       
         End If
     Next
 Else
     ' Si on sort d'une déconnexion, on logue l'IP si elle est différente...
     If connected = false Then
   newIP = GetIP()
   If IP <> newIP Then
       IP = newIP
       logfile.write("IP = " & IP & Chr(13) & chr(10))
   End If
     End If
     
     connected = true
     
     If debugmode = true Then
   MsgBox "Connecté Etape 1"
     End If
     
 End if  
    Next
    WScript.Sleep(tempo * 1000)
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  

Function GetIP()
    On Error Resume Next
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    On Error Resume Next
    If http Is Nothing Then
 Set http = CreateObject("WinHttp.WinHttpRequest.5")
    End If
    http.Open "GET", "http://www.whatismyip.com/", true
    WScript.Sleep (1)
    http.SetRequestHeader "Cache-Control", "no-cache"
    http.Send
    If http.WaitForResponse = true Then
 If InStr(105, http.ResponseText, "Your IP is ") Then
     temp = Mid(http.ResponseText, 112, 30)
     index = InStr(temp, " What")
     IP = Left(temp, index - 1)
     GetIP = IP
 End If
    End If
End Function
edreams
ahhhh autant pour moi je croyais que c'etais un script AutoIt comme celui qui avait été posté recemment !

merci pour ton travail très utile
loic69
Nouvelle version, avec recherche de l'IP publique regulièerement et affichage seulement si elle est différente...On pourrait encore ajouter la durée de la déconnexion mais bon...

CODE
' Script écrit par plcarette pour www.****.com permettant de loguer dans un fichier les désynchronisations
' de la ligne ADSL. Ce script fonctionne que l'on soit connecté en direct (USB ou Ethernet en PPPoE) ou à
' travers un routeur.
' Principe : Ping de serveursen boucle, si aucun des 2 ne réponds alors on assimile ceci à une déconnexion...
' Seul le premier evenement est logué pour chaque déconnexion de façon à ne pas encombrer le fichier de log
' sinon on aurait une ligne pour chaque ping...
' Renomez ce fichier texte en deconnexion.vbs par exemple puis executez le (sous XP SP2).
' Non testé sous les autres OS.


' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
tempo = 5      ' tempo en secondes permettant de ne pas pinguer les machines en permanence
tempoIP = 10        ' coeeficent multiplicateur à la tempo pour la recuperation de l'IP Publique
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""          ' IP publique (du routeur ou de la machine)
IndexLoop = 0        ' Index permettant de ne pas recuperer à chaque tempo l'adresse IP publique

If machine1 = "" & machine2 = "" & logfile = "" Then Return

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    End If
End If

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")
If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
logfile.write(Chr(13) & chr(10) & "Démarrage du script VBS le " & Date & " à " & Time & Chr(13) & chr(10))    
logfile.write("IP = " & IP & Chr(13) & chr(10))
Do
    set ObjPing1 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine1&"'")
    For each obj1 in ObjPing1
 if obj1.StatusCode <> 0 or  IsNull(obj1.StatusCode) then
     ' la machine n'est pas connecté au réseau, on essaye avec la 2ème machine
     Set ObjPing2 = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&machine2&"'")
     For each obj2 in ObjPing2
   If obj2.StatusCode <> 0 or  IsNull(obj2.StatusCode) then
       ' la 2ème machine n'est pas connecté au réseau !!!
       'MsgBox "Déconnecté"
       If connected = true Then
     logfile.write("Déconnection le " & Date & " à " & Time & chr(13) & chr(10))
     If debugmode = true Then
         MsgBox "Déconnecté Etape 2"
     End If
       End If
       connected = false
         Else
       ' On test l'IP tous les 10 tours de boucles (soit en gros 10 * tempo)
       If IndexLoop = tempoIP Then
     If debugmode = true Then
         MsgBox "GetIP publique Etape 2"
     End If
     IndexLoop = 0
     newIP = GetIP()
     If IP <> newIP Then
         IP = newIP
         logfile.write("IP = " & IP & Chr(13) & chr(10))
     End If
       End If
       
       connected = true
       
       If debugmode = true Then
     MsgBox "Connecté Etape 2"
       End If
       
         End If
     Next
 Else ' La machine 1 répond...
     ' On test l'IP tous les 10 tours de boucle (soit en gros 10 * tempo)
     If IndexLoop = tempoIP Then
   If debugmode = true Then
       MsgBox "GetIP publique Etape 1"
   End If
   IndexLoop = 0
   newIP = GetIP()
   If IP <> newIP Then
       IP = newIP
       logfile.write("IP = " & IP & Chr(13) & chr(10))
   End If
     End If
     
     connected = true
     
     If debugmode = true Then
   MsgBox "Connecté Etape 1"
     End If
     
 End if  
    Next
    WScript.Sleep(tempo * 1000)
    IndexLoop = IndexLoop + 1
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  

Function GetIP()
    On Error Resume Next
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    On Error Resume Next
    If http Is Nothing Then
 Set http = CreateObject("WinHttp.WinHttpRequest.5")
    End If
    http.Open "GET", "http://www.whatismyip.com/", true
    WScript.Sleep (1)
    http.SetRequestHeader "Cache-Control", "no-cache"
    http.Send
    If http.WaitForResponse = true Then
 If InStr(105, http.ResponseText, "Your IP is ") Then
     temp = Mid(http.ResponseText, 112, 30)
     index = InStr(temp, " What")
     IP = Left(temp, index - 1)
     GetIP = IP
 End If
    End If
End Function
loic69
Petite refonte du script pour le rendre plus lisible. Ajout de la durée de la déconnection et amelioration des fonctionnalités de debugage du script (debug.log)

CODE
' Script écrit par plcarette pour JustNeuf.com permettant de loguer dans un fichier les désynchronisations
' de la ligne ADSL. Ce script fonctionne que l'on soit connecté en direct (USB ou Ethernet en PPPoE) ou à
' travers un routeur.
' Principe : Ping de serveursen boucle, si aucun des 2 ne réponds alors on assimile ceci à une déconnexion...
' Seul le premier evenement est logué pour chaque déconnexion de façon à ne pas encombrer le fichier de log
' sinon on aurait une ligne pour chaque ping...
' Renomez ce fichier texte en deconnexion.vbs par exemple puis executez le (sous XP SP2).
' Non testé sous les autres OS.


' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
debugfile = "D:\Debug.log"  ' fichier de debug
tempo = 5      ' tempo en secondes permettant de ne pas pinguer les machines en permanence
tempoIP = 10        ' coeeficent multiplicateur à la tempo pour la recuperation de l'IP Publique
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""          ' IP publique (du routeur ou de la machine)
IndexLoop = 0        ' Index permettant de ne pas recuperer à chaque tempo l'adresse IP publique

If machine1 = "" & machine2 = "" & logfile = "" Then Return

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    Else
 If MyFiles.FileExists(debugfile) Then
     ret = MsgBox ("Voulez-vous garder l'ancien fichier de debug ?", vbYesNo)
     If ret = vbNo Then
   MyFiles.DeleteFile(debugfile)
   MyFiles.CreateTextFile(debugfile)
     End If
 Else
     MyFiles.CreateTextFile(debugfile)
 End If
 Set debugfile = MyFiles.OpenTextFile(debugfile, 8)
    End If
End If

If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
Print("Démarrage du script VBS")    
Print("IP = " & IP)

Do
    If Ping(machine1) = false Then
 ' Ping Failure
 DebugPrint("Ping machine 1 Failure")
 If ping(machine2) = false Then
     ' Ping Failure
     DebugPrint("Ping machine 2 Failure")
     If connected = true Then
   StartDeco = Timer
   Print("Déconnexion")
     End If
     connected = false
       Else
     ' Ping Success
     DebugPrint "Ping Machine 2 Success"
     ' Si on était déconnecté, on calcule la durée de déco
     If connected = false Then
   Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) & " secondes")
     End If
     ' On test l'IP tous les 10 tours de boucles (soit en gros 10 * tempo)
     If IndexLoop >= tempoIP Then
   IndexLoop = 0
   DebugPrint "Will enter in GetNewPublicIP() Machine 2"
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)
    End If
     End If
 End If
    Else
 ' ping Succes
 DebugPrint "Ping Machine 1 Success"
 ' Si on était déconnecté, on calcule la durée de déco
 If connected = false Then
     Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) & " secondes")
 End If
 ' On test l'IP tous les 10 tours de boucle (soit en gros 10 * tempo)
 If IndexLoop >= tempoIP Then
     IndexLoop = 0
     DebugPrint "Will enter in GetNewPublicIP() Machine 1"
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 connected = true
    End if  
    WScript.Sleep(tempo * 1000)
    IndexLoop = IndexLoop + 1
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  

' Fonction Ping => Ping une machine et retourne le résultat
Function Ping (Machine)
    Set ObjPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&Machine&"'")
    For each obj in ObjPing
 If obj.StatusCode <> 0 or  IsNull(obj.StatusCode) then
     ' Ping failure
     Ping = false
    Else
     ' Ping success
     Ping = true
    End If
    Next
    Set ObjPing = nothing
End Function

' Fonction GetIP => Recupere l'IP publique
Function GetIP()
    On Error Resume Next
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    On Error Resume Next
    If http Is Nothing Then
 Set http = CreateObject("WinHttp.WinHttpRequest.5")
    End If
    http.Open "GET", "http://www.whatismyip.com/", true
    WScript.Sleep (1)
    http.SetRequestHeader "Cache-Control", "no-cache"
    http.Send
    If http.WaitForResponse = true Then
 If InStr(105, http.ResponseText, "Your IP is ") Then
     temp = Mid(http.ResponseText, 112, 30)
     index = InStr(temp, " What")
     IP = Left(temp, index - 1)
     GetIP = IP
 End If
    End If
    Set http = nothing
End Function

Function GetNewPublicIP()
    newIP = GetIP()
    Debugprint ("Entering in GetNewPublicIP(), oldIP is " & IP & ", New IP is " & newIP & ".")
    If IP <> newIP Then
 Debugprint "IPs are different"
 IP = newIP
 GetNewPublicIP = true
    Else
 Debugprint "IPs are equal"
 GetNewPublicIP = false
    End If
End Function

Sub Print(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    logfile.write Temp
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub

Sub DebugPrint(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub
loic69
Aller, la version quasi définitive qui fonctionne nickel chez moi...
Bonne utilisation !

CODE
' Script écrit par plcarette pour JustNeuf.com permettant de loguer dans un fichier les désynchronisations
' de la ligne ADSL. Ce script fonctionne que l'on soit connecté en direct (USB ou Ethernet en PPPoE) ou à
' travers un routeur.
' Principe : Ping d'un serveur web en boucle, si aucun des 2 ne réponds alors on assimile ceci à une déconnexion...
' Seul le premier evenement est logué pour chaque déconnexion de façon à ne pas encombrer le fichier de log
' sinon on aurait une ligne pour chaque ping...
' Renomez ce fichier texte en deconnexion.vbs par exemple puis executez le (sous XP SP2).
' Non testé sous les autres OS.


' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
debugfile = "D:\Debug.log"  ' fichier de debug
tempo = 5      ' tempo en secondes permettant de ne pas pinguer les machines en permanence
tempoIP = 10        ' coeeficent multiplicateur à la tempo pour la recuperation de l'IP Publique
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""          ' IP publique (du routeur ou de la machine)
IndexLoop = 0        ' Index permettant de ne pas recuperer à chaque tempo l'adresse IP publique

If machine1 = "" & machine2 = "" & logfile = "" Then Return

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    Else
 If MyFiles.FileExists(debugfile) Then
     ret = MsgBox ("Voulez-vous garder l'ancien fichier de debug ?", vbYesNo)
     If ret = vbNo Then
   MyFiles.DeleteFile(debugfile)
   MyFiles.CreateTextFile(debugfile)
     End If
 Else
     MyFiles.CreateTextFile(debugfile)
 End If
 Set debugfile = MyFiles.OpenTextFile(debugfile, 8)
    End If
End If

If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
Print("Démarrage du script VBS")    
Print("IP = " & IP)

Do
    If Ping(machine1) = false Then
 ' Ping Failure
 DebugPrint("Ping machine 1 Failure")
 If ping(machine2) = false Then
     ' Ping Failure
     DebugPrint("Ping machine 2 Failure")
     If connected = true Then
   StartDeco = Timer
   Print("Déconnexion")
     End If
     connected = false
       Else
     ' Ping Success
     DebugPrint "Ping Machine 2 Success"
     ' Si on était déconnecté, on calcule la durée de déco
     If connected = false Then
   Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) & " secondes")
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)        
   End If
     End If
     ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)
     If IndexLoop >= tempoIP Then
   IndexLoop = 0
   DebugPrint "Will enter in GetNewPublicIP() Machine 2"
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)
    End If
     End If
     connected = true
 End If
    Else
 ' ping Succes
 DebugPrint "Ping Machine 1 Success"
 ' Si on était déconnecté, on calcule la durée de déco
 If connected = false Then
     Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) & " secondes")
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)s
 If IndexLoop >= tempoIP Then
     IndexLoop = 0
     DebugPrint "Will enter in GetNewPublicIP() Machine 1"
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 connected = true
    End if  
    WScript.Sleep(tempo * 1000)
    IndexLoop = IndexLoop + 1
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  

' Fonction Ping => Ping une machine et retourne le résultat
Function Ping (Machine)
    Set ObjPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&Machine&"'")
    For each obj in ObjPing
 If obj.StatusCode <> 0 or  IsNull(obj.StatusCode) then
     ' Ping failure
     Ping = false
    Else
     ' Ping success
     Ping = true
    End If
    Next
    Set ObjPing = nothing
End Function

' Fonction GetIP => Recupere l'IP publique
Function GetIP()
    GetIP = ""
    On Error Resume Next
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    On Error Resume Next
    If http Is Nothing Then
 Set http = CreateObject("WinHttp.WinHttpRequest.5")
    End If
    http.Open "GET", "http://www.whatismyip.com/", true
    WScript.Sleep (1)
    http.SetRequestHeader "Cache-Control", "no-cache"
    http.Send
    If http.WaitForResponse = true Then
 If InStr(105, http.ResponseText, "Your IP is ") Then
     temp = Mid(http.ResponseText, 112, 30)
     index = InStr(temp, " What")
     GetIP = Left(temp, index - 1)
 End If
    End If
    Set http = nothing
End Function

Function GetNewPublicIP()
    newIP = GetIP()
    Debugprint ("Entering in GetNewPublicIP(), oldIP is " & IP & ", New IP is " & newIP & ".")
    If IP <> newIP Then
 Debugprint "IPs are different"
 IP = newIP
 GetNewPublicIP = true
    Else
 Debugprint "IPs are equal"
 GetNewPublicIP = false
    End If
End Function

Sub Print(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    logfile.write Temp
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub

Sub DebugPrint(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub



Voici le log que ça génère :

CODE
12/04/2005 20:54:25 --- Démarrage du script VBS
12/04/2005 20:54:25 --- IP = 81.185.153.xxx
12/04/2005 21:11:33 --- Déconnexion
12/04/2005 21:11:38 --- Durée de déconnexion : 5 secondes
12/04/2005 21:20:59 --- Déconnexion
12/04/2005 21:21:26 --- Durée de déconnexion : 27 secondes
12/04/2005 21:21:27 --- IP = 81.185.144.xxx
12/04/2005 21:26:50 --- Déconnexion
12/04/2005 21:27:19 --- Durée de déconnexion : 30 secondes
12/04/2005 21:27:20 --- IP = 81.185.152.xxx
12/04/2005 21:44:08 --- Déconnexion
12/04/2005 21:44:13 --- Durée de déconnexion : 5 secondes
Nianettao
Petite question. Tu dis que ça marche en cablé (usb ou ethernet) mais est ce que ça peut marcher avec un réseau wifi (théoriquement oui, vu que tu utilise le protocole tcp/ip) ?

Et il y a t-il possibilité d'avoir un exécutable (avec ta signature dessus bien sur cool.gif)
loic69
CITATION
Petite question. Tu dis que ça marche en cablé (usb ou ethernet) mais est ce que ça peut marcher avec un réseau wifi (théoriquement oui, vu que tu utilise le protocole tcp/ip) ?

Et il y a t-il possibilité d'avoir un exécutable (avec ta signature dessus bien sur )

Salut
Ce script fonctionne que tu soit en USB, Ethernet (PPPoe ou routeur), Wifi,... puisque le script est basé sur le ping d'un serveur type www.free.fr. Pour l'obtention de l'IP publique, pas de problème non plus puisque c'est une requète HTTP sur un site qui affiche l'IP...
Donc oui ça devrait marcher pour n'importe quelle conf...Le seul truc c'est que je l'ai testé que sur mes machines qui sont sous XP SP2... Ca devrait fonctionner sous XP, XP SP1. Pour Win 2000, je ne sais pas... Je ferais un test à l'occasion quand j'en aurais l'occasion...

Pour l'exe, non ce n'est pas possible puisque c'est un script VBS qui ne necessite pas une compilation comme un exe VB (VB.NET maintenant !!!).
Si on veut faire un exe, il faudra porter le code mais ça devrait pouvoir se faire facilement en quelques heures...Si c'est de l'exe en VB.NET, ça imposera d'avoir le framework d'installer sur son poste... Le plus simple pour l'utilisateur serait de faire un exe en C/C++ natif...

Je pense que ce script est un bon compromis qui foctionne bien !
a+
mdes
CITATION(Nianettao @ Apr 12 2005, 10:02 PM)
Et il y a t-il possibilité d'avoir un exécutable

Va voir ici, tout petit et paramétrable smile.gif
Jeumeu
Les fonctionalités correspondent exactement à ce que je cherchais.

Merci plcarette.

Par contre, j'ai ce message :
loic69
Tout d'abord, salut le lyonnais !!!!

Etrange, Ligne 1, Caractère 1...
T'est sur que le copier/coller à bien fonctionné...
Le premier caractère doit être un commentaire normalement en VB...
Sinon, je peux te l'envoyer tout pret si tu veux. Donnes moi ton mail en MP.

a+
Jeumeu
Salut lyonnais,

Just un problème avec wordpad. Il faut sauvegarder sous format texte (l'option par défaut est rtf, d'où l'erreur...)

Maintenant ça a l'air de marcher; j'attends la déconnexion (faut pas exagérer quand même...)

Super boulot plcarette

Ps : je suis pas tech, mais suggestions :
- lancer ce script automatiquement au démarrage de windows...
- afficher une icône dans le systray pour un accès rapide au log
mdes
CITATION(jeumeu @ Apr 13 2005, 01:20 AM)
Ps : je suis pas tech, mais suggestions :
- lancer ce script automatiquement au démarrage de windows...
- afficher une icône dans le systray pour un accès rapide au log

Pour ça, regarde 4 posts plus haut, ou directement ici

Téléchargement ici sur mon site.
Le fichier LisezMoi.txt donne toutes les explications d'installation (qui est très simple), ainsi que la façon de paramétrer le logiciel en modifiant le fichier ConnectLog.ini.

Et il suffit de mettre un raccourci de ConnectLog.exe dans le menu Démarrage biggrin.gif


Et l'icône avec son menu contextuel :


Exemple de fichier Log :
CODE
2005-04-11 10:36:36 : * ---------- Démarrage de S:\ASauver\Sauvegardes\ConnectLog\ConnectLog.exe
2005-04-11 12:16:19 : * Pas d'IP publique
2005-04-11 12:18:03 : * Nouvelle IP Publique = 84.99.33.114
2005-04-11 16:10:20 : * Pas d'IP publique
2005-04-11 16:10:39 : * IP Publique Identique = 84.99.33.114
...
2005-04-12 09:15:55 : * ---------- Démarrage de S:\ASauver\Sauvegardes\ConnectLog\ConnectLog.exe
2005-04-12 09:15:57 : * Nouvelle IP Publique = 84.99.39.128
2005-04-12 11:05:06 :   Fin du Programme
2005-04-12 14:02:37 : * ---------- Démarrage de S:\ASauver\Sauvegardes\ConnectLog\ConnectLog.exe
2005-04-12 14:02:46 : * Nouvelle IP Publique = 84.99.37.140
2005-04-12 21:05:59 : * Pas d'IP publique
2005-04-12 21:06:09 : * Nouvelle IP Publique = 84.99.37.34
2005-04-13 09:47:38 : * Pas d'IP publique
2005-04-13 09:47:58 : * Nouvelle IP Publique = 84.99.35.105
loic69
Exact, j'ai oublié de préciser que c'est du format texte et non rtf ou word...
Le plus simple pour éviter toute erreur est d'utiliser notepad ou un bon vieil editeur de texte comme ultraedit...

CITATION
- lancer ce script automatiquement au démarrage de windows...
- afficher une icône dans le systray pour un accès rapide au log

-Pour lancer le script automatiquement, il suffit de le mettre (ou un raccourci) dans le repertoire C:\Documents and Settings\[Nom du Compte]\Menu Démarrer\Programmes\Démarrage. Attention bien mettre le nom du compte à jour en fonction de ce que vous avez ainsi que la lettre du lecteur (C dans mon cas). Attention, le script démarrera à l'ouverture de windows et non au boot du PC. Ca implique donc une session ouverte par un utilisateur quelconque...(Ce n'est pas un service !!!)
-Pour le systray, bonne idée, je regarde si c'est possible en VBS...

Sinon, tu peux utiliser le soft dont on fait reference dans le post précédent...

Pour voir si ça fonctionne, en attendant une déconnexion, vous pouvez debrancher une vingtaine de seconde, votre cable réseau...
Garfield
moi je dit que ces deux logiciels meritent un post it non? voir meme ne peut on pas creer une section logiciels utiles en regroupant tcp optimizer (lien), futur logicel de programme tv etc?
bon si c'est une connerie pas taper trop fort merci wink.gif
loic69
CITATION
Pour le systray, bonne idée, je regarde si c'est possible en VBS...

Pas possible à priori...puisque c'est pas un process qui tourne...Désolé !
Jeumeu
omegatron va bien nous faire une cht'it rubrique "les softs utiles" dans la base de connaissance...
loic69
Plutot pratique...Voila ce que ça donne depuis qu'il est finalisé !

CODE
12/04/2005 20:54:25 --- Démarrage du script VBS
12/04/2005 20:54:25 --- IP = 81.185.153.114
12/04/2005 21:11:33 --- Déconnexion
12/04/2005 21:11:38 --- Durée de déconnexion : 10 secondes
12/04/2005 21:20:59 --- Déconnexion
12/04/2005 21:21:26 --- Durée de déconnexion : 27 secondes
12/04/2005 21:21:27 --- IP = 81.185.144.242
12/04/2005 21:26:50 --- Déconnexion
12/04/2005 21:27:19 --- Durée de déconnexion : 30 secondes
12/04/2005 21:27:20 --- IP = 81.185.152.218
12/04/2005 21:44:08 --- Déconnexion
12/04/2005 21:44:13 --- Durée de déconnexion : 10 secondes
13/04/2005 03:33:22 --- Déconnexion
13/04/2005 03:33:27 --- Durée de déconnexion : 10 secondes
13/04/2005 03:45:30 --- Déconnexion
13/04/2005 04:13:42 --- Durée de déconnexion : 1698 secondes
13/04/2005 08:13:12 --- Déconnexion
13/04/2005 08:14:05 --- Durée de déconnexion : 58 secondes
13/04/2005 08:14:06 --- IP = 81.185.146.174
13/04/2005 11:19:14 --- Déconnexion
13/04/2005 11:19:35 --- Durée de déconnexion : 26 secondes
13/04/2005 13:51:14 --- Déconnexion
13/04/2005 13:51:49 --- Durée de déconnexion : 40 secondes
13/04/2005 13:51:51 --- IP = 81.185.156.xx
13/04/2005 15:34:39 --- Déconnexion
13/04/2005 15:35:01 --- Durée de déconnexion : 26 secondes
mdes
J'ai mis ma dernière version de l'outil de trace des déconnexions ConnectLog sur un de mes sites.

Voici le début du fichier LisezMoi :
CODE
ConnectLog : Log des déconnexions Internet
----------
v1.1.0

Ce tout petit logiciel permet de tracer les déconnexions à votre FAI (Fournisseur d'Accès Internet).
Il affiche une icône dans la barre de notifications (près de l'horloge).
Cette icône a 2 LEDs :
 celle du bas (avec un "R" à gauche) indique la connection avec le Routeur (éventuel), et
 celle du haut (avec un "I" à gauche), la connexion avec Internet.
Une LED verte indique si la connexion existe, et une rouge si elle n'existe pas.

Les paragraphes suivants décrivent son utilisation et son installation.

-----------
Utilisation :
-----------

Une icône s'affiche dans la barre de notification de Windows (à côté de l'horloge).
Un clic sur cette icône avec le bouton droit de la souris ouvre un menu contextuel qui permet :

==> Afficher le Log

Lance le visualiseur (programme spécifié par "Viewer" dans le fichier de
configuration ConnectLog.ini) qui affichera le fichier Log.

==> Insérer un commentaire

Ouvre une boîte de dialogue.  Le texte saisi dans cette boîte sera inséré dans le
fichier Log.  Cela permet, par exemple, de mettre un commentaire du type
"Déconnexion suite à appel téléphonique" ou bien "Débranchemet du modem".
Une zone permet d'entrer une date et une heure du commentaire.  Ceci donnera
par exemple ""Déconnexion suite à appel téléphonique (10h35)".
Les textes saisis sont mémorisés et affichés dans une liste déroulante modifiable.

==> A Propos...

Donne la version du programme.

==> Sortie

Termine le programme ConnectLog.

Un double-click sur l'icône affiche le fichier Log.
edreams
voilà mes deconnexions pour ces 2 derniers jours (et encore le 20 c'est aujourd'hui et la journée est loin d'être finie)... c'est édifiant. De plus j'utilise internet pour des usages qui impliquent une fiabilité totale, chaque coupure me pose de gros préjudices. Je crois qu'après 1 mois et demi d'utilisation du 9 je vais être obligé de résillier et retourner chez wanadoo.


Démarrage du script VBS le 18/04/2005 à 17:02:48
IP = 84.98.223.xxx

Déconnection le 18/04/2005 à 21:01:09
Déconnection le 18/04/2005 à 22:35:36
Déconnection le 19/04/2005 à 00:11:12
Déconnection le 19/04/2005 à 00:58:59
Déconnection le 19/04/2005 à 01:36:03
Déconnection le 19/04/2005 à 04:43:45
Déconnection le 19/04/2005 à 09:36:43
Déconnection le 19/04/2005 à 22:03:50
Déconnection le 19/04/2005 à 23:41:06
Déconnection le 20/04/2005 à 00:25:12
Déconnection le 20/04/2005 à 00:50:57
Déconnection le 20/04/2005 à 01:46:07
Déconnection le 20/04/2005 à 02:19:34
Déconnection le 20/04/2005 à 02:52:08
Déconnection le 20/04/2005 à 04:31:36
Déconnection le 20/04/2005 à 05:41:22
Déconnection le 20/04/2005 à 09:31:42
tyaki2001
En ce qui me concerne, je suis derrière un routeur wifi qui fonctionne parfaitement et cependant j'ai très régulièrement (environ 15 fois par jour) le type de message suivant dans ConnectLog.log:

CODE
2005-04-17 21:00:06 : [4] * Routeur non-atteignable 192.168.1.1


bien que je n'ai aucune déconnection...

Est-ce que ça pourrait s'améliorer afin de ne pas logguer cette info inutile?
Merci.
mdes
CITATION(tyaki2001 @ Apr 21 2005, 12:16 AM)
En ce qui me concerne, je suis derrière un routeur wifi qui fonctionne parfaitement et cependant j'ai très régulièrement (environ 15 fois par jour) le type de message suivant dans ConnectLog.log:

CODE
2005-04-17 21:00:06 : [4] * Routeur non-atteignable 192.168.1.1


bien que je n'ai aucune déconnection...

Est-ce que ça pourrait s'améliorer afin de ne pas logguer cette info inutile?
Merci.
*

En attendant, tu peux toujours modifier le fichier ConnectLog.ini et mettre un ";" devant la ligne "Router=..." comme indiqué dans ce fichier :
CITATION
[Setup]
; Si pas de routeur, commenter la ligne "RouterIP=..." (insérez ";" en début de ligne)
; If no router, comment the line "RouterIP=..." (insert ";" in start of line)
;RouterIP=192.168.9.1
LogFile=D:\ConnectLog.log
TimeOut=10
Language=French
Viewer=D:\Program Files\PSPad\PSPad.exe /9999 "%1"
mdes
Une nouvelle version est disponible v1.1.1
CITATION
==> v1.1.1 20/04/2005

- Aucune icône n'était affichée lorsque la connexion au routeur était perdue.
- Changement d'un libellé pour aligner les IP.
- Possibilité de tracer ou non les informations dans le fichier Log
  (cfr section [Trace] du fichier ConnectLog.ini)
- Possibilité d'afficher ou non les informations dans la barre de notification des tâches
  (cfr section [TrayTips] du fichier ConnectLog.ini)
- Ajout du menu de relecture des paramètres.
mdes
Une nouvelle version est disponible v1.2.0
CITATION
- Ajout d'un programme de configuration (EditConfig.exe)
- Ajout d'entrées dans le menu :
    - Aller directement sur le site de ConnectLog (http://mdes.tools.free.fr).
    - Recharger le fichier de paramètres (ConnectLog.ini).
    - Editer le fichier de paramètres (ConnectLog.ini).
- Support des variables d'environnement.
loic69
Mise à jour de mon script VBS (v1.3) => Correction d'un problème d'affichage
Je rappelle que ce script nécessite l'installation d'aucun logiciel. Il faut juste le copier dans un fichier texte (.txt) à renomer en .vbs et de l'executer. On peut voir si il tourne dans le gestionnaire de tache sous le nom de process "wscript.exe". Il fonctionne sous Windows XP.

CITATION
' Version 1.3
' Script écrit par plcarette pour JustNeuf.com permettant de loguer dans un fichier les désynchronisations
' de la ligne ADSL. Ce script fonctionne que l'on soit connecté en direct (USB ou Ethernet en PPPoE) ou à
' travers un routeur.
' Principe : Ping d'un serveur web en boucle, si aucun des 2 ne réponds alors on assimile ceci à une déconnexion...
' Seul le premier evenement est logué pour chaque déconnexion de façon à ne pas encombrer le fichier de log
' sinon on aurait une ligne pour chaque ping...
' Renomez ce fichier texte en deconnexion.vbs par exemple puis executez le (sous XP SP2).
' Non testé sous les autres OS.


' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log" ' path sur le fichier de log
debugfile = "D:\Debug.log"  ' fichier de debug
tempo = 5      ' tempo en secondes permettant de ne pas pinguer les machines en permanence
tempoIP = 10     ' coeeficent multiplicateur à la tempo pour la recuperation de l'IP Publique
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true     ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""       ' IP publique (du routeur ou de la machine)
IndexLoop = 0     ' Index permettant de ne pas recuperer à chaque tempo l'adresse IP publique

If machine1 = "" & machine2 = "" & logfile = "" Then Return

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")

If debugmode = true Then
ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
If ret = vbNo Then
  debugmode = false
Else
  If MyFiles.FileExists(debugfile) Then
   ret = MsgBox ("Voulez-vous garder l'ancien fichier de debug ?", vbYesNo)
   If ret = vbNo Then
    MyFiles.DeleteFile(debugfile)
    MyFiles.CreateTextFile(debugfile)
   End If
  Else
   MyFiles.CreateTextFile(debugfile)
  End If
  Set debugfile = MyFiles.OpenTextFile(debugfile, 8)
End If
End If

If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
Print("Démarrage du script VBS")    
Print("IP = " & IP)

Do
If Ping(machine1) = false Then
  ' Ping Failure
  DebugPrint("Ping machine 1 Failure")
  If ping(machine2) = false Then
   ' Ping Failure
   DebugPrint("Ping machine 2 Failure")
   If connected = true Then
    StartDeco = Timer
    Print("Déconnexion")
   End If
   connected = false
     Else
      ' Ping Success
      DebugPrint "Ping Machine 2 Success"
      ' Si on était déconnecté, on calcule la durée de déco
   If connected = false Then
    ' On rajoute 5 secondes pour le temps moyen que prennent les 2 pings précédent qui échouent
    Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) + 5 & " secondes")
    If GetNewPublicIP() = true Then
     Print("IP = " & IP)    
    End If
   End If
      ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)
   If IndexLoop >= tempoIP Then
    IndexLoop = 0
    DebugPrint "Will enter in GetNewPublicIP() Machine 2"
    If GetNewPublicIP() = true Then
     Print("IP = " & IP)
     End If
   End If
   connected = true
  End If
Else
  ' ping Succes
  DebugPrint "Ping Machine 1 Success"
  ' Si on était déconnecté, on calcule la durée de déco
  If connected = false Then
   ' On rajoute 5 secondes pour le temps moyen que prennent les 2 pings précédent qui échouent
   Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) + 5 & " secondes")
   If GetNewPublicIP() = true Then
    Print("IP = " & IP)
   End If
  End If
  ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)s
  If IndexLoop >= tempoIP Then
   IndexLoop = 0
   DebugPrint "Will enter in GetNewPublicIP() Machine 1"
   If GetNewPublicIP() = true Then
    Print("IP = " & IP)
   End If
  End If
  connected = true
End if 
WScript.Sleep(tempo * 1000)
IndexLoop = IndexLoop + 1
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing 

' Fonction Ping => Ping une machine et retourne le résultat
Function Ping (Machine)
Set ObjPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&Machine&"'")
For each obj in ObjPing
  If obj.StatusCode <> 0 or  IsNull(obj.StatusCode) then
   ' Ping failure
   Ping = false
     Else
      ' Ping success
      Ping = true
     End If
Next
Set ObjPing = nothing
End Function

' Fonction GetIP => Recupere l'IP publique
Function GetIP()
GetIP = ""
On Error Resume Next
Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
On Error Resume Next
If http Is Nothing Then
  Set http = CreateObject("WinHttp.WinHttpRequest.5")
End If
http.Open "GET", "http://www.whatismyip.com/", true
WScript.Sleep (1)
http.SetRequestHeader "Cache-Control", "no-cache"
http.Send
If http.WaitForResponse = true Then
  If InStr(105, http.ResponseText, "Your IP is ") Then
   temp = Mid(http.ResponseText, 112, 30)
   index = InStr(temp, " What")
   GetIP = Left(temp, index - 1)
  End If
End If
Set http = nothing
End Function

Function GetNewPublicIP()
newIP = GetIP()
Debugprint ("Entering in GetNewPublicIP(), oldIP is " & IP & ", New IP is " & newIP & ".")
If newIP = "" Then
  Debugprint "IP is null"
  GetNewPublicIP = false
  Return
ElseIf IP <> newIP Then
  Debugprint "IPs are different"
  IP = newIP
  GetNewPublicIP = true
Else
  Debugprint "IPs are equal"
  GetNewPublicIP = false
End If
End Function

Sub Print(Chaine)
Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
logfile.write Temp
If debugmode = true Then
  debugfile.write Temp
End If
End Sub

Sub DebugPrint(Chaine)
Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
If debugmode = true Then
  debugfile.write Temp
End If
End Sub
edreams
merci bcp !
loic69
Petite correction mineur...V1.4

CODE
' Version 1.4
' Script écrit par plcarette pour JustNeuf.com permettant de loguer dans un fichier les désynchronisations
' de la ligne ADSL. Ce script fonctionne que l'on soit connecté en direct (USB ou Ethernet en PPPoE) ou à
' travers un routeur.
' Principe : Ping d'un serveur web en boucle, si aucun des 2 ne réponds alors on assimile ceci à une déconnexion...
' Seul le premier evenement est logué pour chaque déconnexion de façon à ne pas encombrer le fichier de log
' sinon on aurait une ligne pour chaque ping...
' Renomez ce fichier texte en deconnexion.vbs par exemple puis executez le (sous XP SP2).
' Non testé sous les autres OS.


' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
debugfile = "D:\Debug.log"  ' fichier de debug
tempo = 5      ' tempo en secondes permettant de ne pas pinguer les machines en permanence
tempoIP = 10        ' coeeficent multiplicateur à la tempo pour la recuperation de l'IP Publique
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""          ' IP publique (du routeur ou de la machine)
IndexLoop = 0        ' Index permettant de ne pas recuperer à chaque tempo l'adresse IP publique

If machine1 = "" & machine2 = "" & logfile = "" Then Return

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    Else
 If MyFiles.FileExists(debugfile) Then
     ret = MsgBox ("Voulez-vous garder l'ancien fichier de debug ?", vbYesNo)
     If ret = vbNo Then
   MyFiles.DeleteFile(debugfile)
   MyFiles.CreateTextFile(debugfile)
     End If
 Else
     MyFiles.CreateTextFile(debugfile)
 End If
 Set debugfile = MyFiles.OpenTextFile(debugfile, 8)
    End If
End If

If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
Print("Démarrage du script VBS")    
Print("IP = " & IP)

Do
    If Ping(machine1) = false Then
 ' Ping Failure
 DebugPrint("Ping machine 1 Failure")
 If ping(machine2) = false Then
     ' Ping Failure
     DebugPrint("Ping machine 2 Failure")
     If connected = true Then
   StartDeco = Timer
   Print("Déconnexion")
     End If
     connected = false
       Else
     ' Ping Success
     DebugPrint "Ping Machine 2 Success"
     ' Si on était déconnecté, on calcule la durée de déco
     If connected = false Then
   ' On rajoute 5 secondes pour le temps moyen que prennent les 2 pings précédent qui échouent
   Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) + 5 & " secondes")
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)        
   End If
     End If
     ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)
     If IndexLoop >= tempoIP Then
   IndexLoop = 0
   DebugPrint "Will enter in GetNewPublicIP() Machine 2"
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)
    End If
     End If
     connected = true
 End If
    Else
 ' ping Succes
 DebugPrint "Ping Machine 1 Success"
 ' Si on était déconnecté, on calcule la durée de déco
 If connected = false Then
     ' On rajoute 5 secondes pour le temps moyen que prennent les 2 pings précédent qui échouent
     Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) + 5 & " secondes")
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)s
 If IndexLoop >= tempoIP Then
     IndexLoop = 0
     DebugPrint "Will enter in GetNewPublicIP() Machine 1"
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 connected = true
    End if  
    WScript.Sleep(tempo * 1000)
    IndexLoop = IndexLoop + 1
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  

' Fonction Ping => Ping une machine et retourne le résultat
Function Ping (Machine)
    Set ObjPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&Machine&"'")
    For each obj in ObjPing
 If obj.StatusCode <> 0 or  IsNull(obj.StatusCode) then
     ' Ping failure
     Ping = false
    Else
     ' Ping success
     Ping = true
    End If
    Next
    Set ObjPing = nothing
End Function

' Fonction GetIP => Recupere l'IP publique
Function GetIP()
    GetIP = ""
    On Error Resume Next
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    On Error Resume Next
    If http Is Nothing Then
 Set http = CreateObject("WinHttp.WinHttpRequest.5")
    End If
    http.Open "GET", "http://www.whatismyip.com/", true
    WScript.Sleep (1)
    http.SetRequestHeader "Cache-Control", "no-cache"
    http.Send
    If http.WaitForResponse = true Then
 If InStr(105, http.ResponseText, "Your IP is ") Then
     temp = Mid(http.ResponseText, 112, 30)
     index = InStr(temp, " What")
     GetIP = Left(temp, index - 1)
 End If
    End If
    Set http = nothing
End Function

Function GetNewPublicIP()
    newIP = GetIP()
    Debugprint ("Entering in GetNewPublicIP(), oldIP is " & IP & ", New IP is " & newIP & ".")
    If newIP = "" Then
 Debugprint "IP is null"
 GetNewPublicIP = false
    ElseIf IP <> newIP Then
 Debugprint "IPs are different"
 IP = newIP
 GetNewPublicIP = true
    Else
 Debugprint "IPs are equal"
 GetNewPublicIP = false
    End If
End Function

Sub Print(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    logfile.write Temp
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub

Sub DebugPrint(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub
Nono
Merci pour ce petit script qui fonctionne bien chez moi

Je vais pourvoir vérifier la stabilité de l'ADSL chez moi avant mon départ en DT chez Free (pour des raisons commerciales uniquement je tiens à le préciser).
mdes
Une nouvelle version est disponible v1.2.2
CITATION
==> v1.2.2 30/04/2005

- Suppression des fichiers temporaires créés par la recherche d'IP.
- Correction de la recherche automatique de l'IP du routeur.
- Prise en compte de multiples passerelles.
- Ajout de commentaires avec date/heure pour insertion au bon endroit dans le fichier Log.
- Affichage d'un "P" dans l'icône pendant le "ping" d'Internet.
- Définition du double-clic sur l'icône : "Afficher le fichier Log" ou "Saisir un commentaire"
Example de fichier Log :
CODE
2005-04-29 10:47:13 : [0] ---------- Démarrage de ConnectLog.Test.exe (v1.2.2 ß1) Routeur = 192.168.9.1
2005-04-29 10:47:14 : [2] Même     IP Publique = 84.99.34.30
2005-04-29 14:02:00 : [5] ==> Sortie du mode Veille <==
2005-04-29 14:04:14 : [4] Routeur non-atteignable
2005-04-29 14:06:25 : [3] Nouvelle IP Publique = 84.99.31.51
2005-04-29 14:07:28 : [3] Nouvelle IP Publique = 84.99.35.183
2005-04-29 14:11:26 : [1] Pas d'IP publique
2005-04-29 14:11:26 : [5] ==> Reset Modem <==
2005-04-29 14:11:37 : [3] Nouvelle IP Publique = 84.99.39.249
2005-04-29 14:18:45 : [1] Pas d'IP publique
2005-04-29 14:20:42 : [3] Nouvelle IP Publique = 84.99.31.151
2005-04-29 15:04:30 : [9] Fin du Programme
2005-04-29 15:09:19 : [0] ---------- Démarrage de ConnectLog.exe (v1.2.2) Routeur = 192.168.9.1
2005-04-29 15:09:20 : [2] Même     IP Publique = 84.99.31.151
2005-04-29 17:26:54 : [3] Nouvelle IP Publique = 84.99.33.177
2005-04-30 00:16:05 : [3] Nouvelle IP Publique = 84.99.39.216
loic69
Evolution vers Version 1.5 suite au changement sur le site whatismyip

CODE
' Version 1.5
' Script écrit par plcarette pour JustNeuf.com permettant de loguer dans un fichier les désynchronisations
' de la ligne ADSL. Ce script fonctionne que l'on soit connecté en direct (USB ou Ethernet en PPPoE) ou à
' travers un routeur.
' Principe : Ping d'un serveur web en boucle, si aucun des 2 ne réponds alors on assimile ceci à une déconnexion...
' Seul le premier evenement est logué pour chaque déconnexion de façon à ne pas encombrer le fichier de log
' sinon on aurait une ligne pour chaque ping...
' Renomez ce fichier texte en deconnexion.vbs par exemple puis executez le (sous XP SP2).
' Non testé sous les autres OS.
' Historique :
' 1.1 Creation du script
' 1.2 Supression du log permanent dans le fichier evitant la surchgarge
' 1.3 Ajout de fonction de debug
' 1.4 Correction bug affichant une IP vide
' 1.5 Modif de la fonction GetIP suite au changemet du site www.whatismyip.com

' Variable modifiable par l'utilisateur
machine1 = "www.yahoo.fr"  ' Nom de la machine 1 à pinguer
machine2 = "www.free.fr"  ' Nom de la machine 2 à pinguer (au cas ou la 1 ne repond pas)
logfile = "D:\Deconnexion.log"    ' path sur le fichier de log
debugfile = "D:\Debug.log"  ' fichier de debug
tempo = 5      ' tempo en secondes permettant de ne pas pinguer les machines en permanence
tempoIP = 10        ' coeeficent multiplicateur à la tempo pour la recuperation de l'IP Publique
debugmode = false    ' permet d'afficher les messagebox de debug

' Variable non modifiable par l'utilisateur
connected = true        ' variable utilisée par le script pour ne loguer qu'un évènement à chaque déconnexion
IP = ""          ' IP publique (du routeur ou de la machine)
IndexLoop = 0        ' Index permettant de ne pas recuperer à chaque tempo l'adresse IP publique

If machine1 = "" & machine2 = "" & logfile = "" Then Return

Set WshShell = CreateObject("WScript.Shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")

If debugmode = true Then
    ret = MsgBox ("Mode Debug Activé, Confirmez-vous ?", vbYesNo)
    If ret = vbNo Then
 debugmode = false
    Else
 If MyFiles.FileExists(debugfile) Then
     ret = MsgBox ("Voulez-vous garder l'ancien fichier de debug ?", vbYesNo)
     If ret = vbNo Then
   MyFiles.DeleteFile(debugfile)
   MyFiles.CreateTextFile(debugfile)
     End If
 Else
     MyFiles.CreateTextFile(debugfile)
 End If
 Set debugfile = MyFiles.OpenTextFile(debugfile, 8)
    End If
End If

If not MyFiles.FileExists(logfile) Then MyFiles.CreateTextFile(logfile)
Set logfile = MyFiles.OpenTextFile(logfile, 8)
IP = GetIP()
Print("Démarrage du script VBS")    
Print("IP = " & IP)

Do
    If Ping(machine1) = false Then
 ' Ping Failure
 DebugPrint("Ping machine 1 Failure")
 If ping(machine2) = false Then
     ' Ping Failure
     DebugPrint("Ping machine 2 Failure")
     If connected = true Then
   StartDeco = Timer
   Print("Déconnexion")
     End If
     connected = false
       Else
     ' Ping Success
     DebugPrint "Ping Machine 2 Success"
     ' Si on était déconnecté, on calcule la durée de déco
     If connected = false Then
   ' On rajoute 5 secondes pour le temps moyen que prennent les 2 pings précédent qui échouent
   Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) + 5 & " secondes")
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)        
   End If
     End If
     ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)
     If IndexLoop >= tempoIP Then
   IndexLoop = 0
   DebugPrint "Will enter in GetNewPublicIP() Machine 2"
   If GetNewPublicIP() = true Then
       Print("IP = " & IP)
    End If
     End If
     connected = true
 End If
    Else
 ' ping Succes
 DebugPrint "Ping Machine 1 Success"
 ' Si on était déconnecté, on calcule la durée de déco
 If connected = false Then
     ' On rajoute 5 secondes pour le temps moyen que prennent les 2 pings précédent qui échouent
     Print ("Durée de déconnexion : " & Round(Timer - StartDeco, 0) + 5 & " secondes")
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 ' On test l'IP régulièrement (soit en gros toutes les 10 * tempo secondes)s
 If IndexLoop >= tempoIP Then
     IndexLoop = 0
     DebugPrint "Will enter in GetNewPublicIP() Machine 1"
     If GetNewPublicIP() = true Then
   Print("IP = " & IP)
     End If
 End If
 connected = true
    End if  
    WScript.Sleep(tempo * 1000)
    IndexLoop = IndexLoop + 1
Loop

logfile.close
Set logfile = nothing
Set logfiles = nothing
set ObjPing = nothing  

' Fonction Ping => Ping une machine et retourne le résultat
Function Ping (Machine)
    Set ObjPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select"&" * from win32_PingStatus where address='"&Machine&"'")
    For each obj in ObjPing
 If obj.StatusCode <> 0 or  IsNull(obj.StatusCode) then
     ' Ping failure
     Ping = false
    Else
     ' Ping success
     Ping = true
    End If
    Next
    Set ObjPing = nothing
End Function

' Fonction GetIP => Recupere l'IP publique
Function GetIP()
    GetIP = ""
    On Error Resume Next
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    On Error Resume Next
    If http Is Nothing Then
 Set http = CreateObject("WinHttp.WinHttpRequest.5")
    End If
    http.Open "GET", "http://www.whatismyip.com/", true
    WScript.Sleep (1)
    http.SetRequestHeader "Cache-Control", "no-cache"
    http.Send
    If http.WaitForResponse = true Then
 If InStr(101, http.ResponseText, "Your IP Is ") Then
     temp = Mid(http.ResponseText, 112, 30)
     index = InStr(temp, " What")
     GetIP = Left(temp, index - 1)
 End If
    End If
    Set http = nothing
End Function

Function GetNewPublicIP()
    newIP = GetIP()
    Debugprint ("Entering in GetNewPublicIP(), oldIP is " & IP & ", New IP is " & newIP & ".")
    If newIP = "" Then
 Debugprint "IP is null"
 GetNewPublicIP = false
    ElseIf IP <> newIP Then
 Debugprint "IPs are different"
 IP = newIP
 GetNewPublicIP = true
    Else
 Debugprint "IPs are equal"
 GetNewPublicIP = false
    End If
End Function

Sub Print(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    logfile.write Temp
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub

Sub DebugPrint(Chaine)
    Temp = Date & " " & Time & " --- " & Chaine & Chr(13) & chr(10)
    If debugmode = true Then
 debugfile.write Temp
    End If
End Sub
morais
Bonjour,

depuis quelque temps le script ne recupère plus l'adresse IP sur le log sad.gif il me signale bien les deconexions.

Merci pour ce script.
Jeumeu
idem chez moi.

Loic69, si tu es dans les parages...
Thierry.34
Les canailloux de whatismayip alternent "You IP Is xxx" et "Your IP - xxx"

Je vous propose donc de remplacer les lignes suivantes :

If http.WaitForResponse = true Then
If InStr(105, http.ResponseText, "Your IP is ") Then
temp = Mid(http.ResponseText, 112, 30)
index = InStr(temp, " What")
GetIP = Left(temp, index - 1)
End If
End If

par :

If http.WaitForResponse = true Then
If InStr(105, http.ResponseText, "Your IP ") Then
myArray = Split(Mid(http.ResponseText, InStr(105, http.ResponseText, "Your IP "), 30))
GetIP = myArray(4)
End If
End If
Jeumeu
Merci Thierry.34,

Je viens d'appliquer ta modif sur la v1.4 et c'est ok.

(ne connaissant rien à ce language, je n'ai pas osé l'appliquer à la 1.5...)
morais
Merci Thierry.34, c'est bon maintenant yahoo.gif
morais
Thierry.34,
c'est à nouveau moi, je ne recupère plus l'adresse IP depuis 2/3 jours.
si tu pouvais jeter un oeil wink.gif
merci d'avance.
Ceci est une version "bas débit" de Justneuf. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.
Powered By IP.Board © 2008 IPS, Inc.
Neuf Cegetel et vous | Réseau Neuf Cegetel | Problèmes Avec Votre Connexion ADSL | Problèmes Avec Votre Débit | Problèmes Avec Votre Activation | ADSL2+ Neuf | Forum Fibre Optique Neuf | Neuf Box Trio 2 | Neuf Box Trio 3C/D | Neuf Box f@st 3302 | Neuf Box 4 | Autres modems ADSL | Forums Neuf TV | Neuf Media Center | Problèmes rencontrés avec Neuf TV | Neuf Player ( MP9 ) | Forums Téléphonie Neuf | Forum Neuf Mobile | Forum Neuf Mobile Liberté | Forum partie commerciale Neuf | Questions Générales et Autres Services | Espace Sécurité Neuf |

Secret Story 2