Je cherche a savoir si ma connexion internet est établie afin de rebooter ma
livebox en cas de probleme.
Ma livebox est en routeur sur ethenet.
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les
commandes telnet via des sendkeys.
C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis
preneur).
Il ne me reste plus qu'a savoir si je suis connecté ou non
si vous pouvez me fournir un bout de code...
merci de votre aide
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Picalausa François
Hello,
"Jean Naimard" a écrit dans le message de news: 4555994d$0$27380$
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les commandes telnet via des sendkeys. C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis preneur).
S'agit-il réellement de telnet utilisé en tant que client telnet, ou en tant que client "autre", puisque telnet effectue aussi bien cette tâche? Dans un cas comme dans l'autre, avec un contrôle Winsock, tu devrais pouvoir t'en sortir. Dans le premier cas, je te conseille cependant de lire la documentation associée à telnet: http://www.ietf.org/rfc/rfc0854.txt ou en français: http://abcdrfc.free.fr/rfc-vf/rfc854.html
Il ne me reste plus qu'a savoir si je suis connecté ou non si vous pouvez me fournir un bout de code...
Une méthode est proposée sur la FAQ: http://faq.vb.free.fr/index.php?questionw Celle-ci n'est cependant pas toujours très fiable. Une autre méthode, apparement plus complète avait été proposée par Partick Philippot: http://groups.google.fr/group/microsoft.public.fr.vb/msg/cba7bb8373d3b809 Dont voici une possible traduction VB: Private Const ERROR_SUCCESS As Long = 0
Private Type MIB_IPFORWARDROW dwForwardDest As Long dwForwardMask As Long dwForwardPolicy As Long dwForwardNextHop As Long dwForwardIfIndex As Long dwForwardType As Long dwForwardProto As Long dwForwardAge As Long dwForwardNextHopAS As Long dwForwardMetric1 As Long dwForwardMetric2 As Long dwForwardMetric3 As Long dwForwardMetric4 As Long dwForwardMetric5 As Long End Type
Private Type MIB_IPFORWARDTABLE dwNumEntries As Long table(0) As MIB_IPFORWARDROW End Type
Private Declare Function GetIpForwardTable _ Lib "Iphlpapi" _ ( _ pIpForwardTable As Any, _ pdwSize As Long, _ ByVal bOrder As Long _ ) _ As Long
Private Function IsConnected() As Boolean Dim TableSize As Long, IPFRows() As Long, i As Long
ReDim IPFRows(TableSize / 4) If GetIpForwardTable(IPFRows(0), TableSize, 1) = ERROR_SUCCESS Then For i = 1 To IPFRows(0) * 14 Step 14 'IPFRows(0) = MIB_IPFORWARDTABLE.dwNumEntries If IPFRows(i) = 0 Then 'PFRows(1 + (i - 1) * 14) ' MIB_IPFORWARDTABLE.table(nIndex).dwForwardDest IsConnected = True
Exit For End If Next i End If End Function
Une troisième technique fréquemment utilisée est la requête ping vers un ou plusieurs serveurs considérés comme ayant un bon uptime pour encore un certain temps (ce qui est une définition TRES floue..). On retrouve fréquemment parmis ces serveurs www.google.com www.yahoo.com, ... L'avantage (ou désavantage) est qu'il est possible alors d'indiquer qu'il n'y a pas de connection si un pare feu les bloque toutes. Un article à ce sujet est disponible sur la KB: http://support.microsoft.com/?kbid00197
-- Picalausa François
Hello,
"Jean Naimard" <Pas_de_spam@yahoo.fr> a écrit dans le message de news:
4555994d$0$27380$ba4acef3@news.orange.fr...
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les
commandes telnet via des sendkeys.
C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis
preneur).
S'agit-il réellement de telnet utilisé en tant que client telnet, ou en tant
que client "autre", puisque telnet effectue aussi bien cette tâche?
Dans un cas comme dans l'autre, avec un contrôle Winsock, tu devrais pouvoir
t'en sortir.
Dans le premier cas, je te conseille cependant de lire la documentation
associée à telnet:
http://www.ietf.org/rfc/rfc0854.txt
ou en français:
http://abcdrfc.free.fr/rfc-vf/rfc854.html
Il ne me reste plus qu'a savoir si je suis connecté ou non
si vous pouvez me fournir un bout de code...
Une méthode est proposée sur la FAQ:
http://faq.vb.free.fr/index.php?questionw
Celle-ci n'est cependant pas toujours très fiable. Une autre méthode,
apparement plus complète avait été proposée par Partick Philippot:
http://groups.google.fr/group/microsoft.public.fr.vb/msg/cba7bb8373d3b809
Dont voici une possible traduction VB:
Private Const ERROR_SUCCESS As Long = 0
Private Type MIB_IPFORWARDROW
dwForwardDest As Long
dwForwardMask As Long
dwForwardPolicy As Long
dwForwardNextHop As Long
dwForwardIfIndex As Long
dwForwardType As Long
dwForwardProto As Long
dwForwardAge As Long
dwForwardNextHopAS As Long
dwForwardMetric1 As Long
dwForwardMetric2 As Long
dwForwardMetric3 As Long
dwForwardMetric4 As Long
dwForwardMetric5 As Long
End Type
Private Type MIB_IPFORWARDTABLE
dwNumEntries As Long
table(0) As MIB_IPFORWARDROW
End Type
Private Declare Function GetIpForwardTable _
Lib "Iphlpapi" _
( _
pIpForwardTable As Any, _
pdwSize As Long, _
ByVal bOrder As Long _
) _
As Long
Private Function IsConnected() As Boolean
Dim TableSize As Long, IPFRows() As Long, i As Long
ReDim IPFRows(TableSize / 4)
If GetIpForwardTable(IPFRows(0), TableSize, 1) = ERROR_SUCCESS Then
For i = 1 To IPFRows(0) * 14 Step 14
'IPFRows(0) = MIB_IPFORWARDTABLE.dwNumEntries
If IPFRows(i) = 0 Then
'PFRows(1 + (i - 1) * 14) ' MIB_IPFORWARDTABLE.table(nIndex).dwForwardDest
IsConnected = True
Exit For
End If
Next i
End If
End Function
Une troisième technique fréquemment utilisée est la requête ping vers un ou
plusieurs serveurs considérés comme ayant un bon uptime pour encore un
certain temps (ce qui est une définition TRES floue..). On retrouve
fréquemment parmis ces serveurs www.google.com www.yahoo.com, ...
L'avantage (ou désavantage) est qu'il est possible alors d'indiquer qu'il
n'y a pas de connection si un pare feu les bloque toutes.
Un article à ce sujet est disponible sur la KB:
http://support.microsoft.com/?kbid00197
"Jean Naimard" a écrit dans le message de news: 4555994d$0$27380$
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les commandes telnet via des sendkeys. C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis preneur).
S'agit-il réellement de telnet utilisé en tant que client telnet, ou en tant que client "autre", puisque telnet effectue aussi bien cette tâche? Dans un cas comme dans l'autre, avec un contrôle Winsock, tu devrais pouvoir t'en sortir. Dans le premier cas, je te conseille cependant de lire la documentation associée à telnet: http://www.ietf.org/rfc/rfc0854.txt ou en français: http://abcdrfc.free.fr/rfc-vf/rfc854.html
Il ne me reste plus qu'a savoir si je suis connecté ou non si vous pouvez me fournir un bout de code...
Une méthode est proposée sur la FAQ: http://faq.vb.free.fr/index.php?questionw Celle-ci n'est cependant pas toujours très fiable. Une autre méthode, apparement plus complète avait été proposée par Partick Philippot: http://groups.google.fr/group/microsoft.public.fr.vb/msg/cba7bb8373d3b809 Dont voici une possible traduction VB: Private Const ERROR_SUCCESS As Long = 0
Private Type MIB_IPFORWARDROW dwForwardDest As Long dwForwardMask As Long dwForwardPolicy As Long dwForwardNextHop As Long dwForwardIfIndex As Long dwForwardType As Long dwForwardProto As Long dwForwardAge As Long dwForwardNextHopAS As Long dwForwardMetric1 As Long dwForwardMetric2 As Long dwForwardMetric3 As Long dwForwardMetric4 As Long dwForwardMetric5 As Long End Type
Private Type MIB_IPFORWARDTABLE dwNumEntries As Long table(0) As MIB_IPFORWARDROW End Type
Private Declare Function GetIpForwardTable _ Lib "Iphlpapi" _ ( _ pIpForwardTable As Any, _ pdwSize As Long, _ ByVal bOrder As Long _ ) _ As Long
Private Function IsConnected() As Boolean Dim TableSize As Long, IPFRows() As Long, i As Long
ReDim IPFRows(TableSize / 4) If GetIpForwardTable(IPFRows(0), TableSize, 1) = ERROR_SUCCESS Then For i = 1 To IPFRows(0) * 14 Step 14 'IPFRows(0) = MIB_IPFORWARDTABLE.dwNumEntries If IPFRows(i) = 0 Then 'PFRows(1 + (i - 1) * 14) ' MIB_IPFORWARDTABLE.table(nIndex).dwForwardDest IsConnected = True
Exit For End If Next i End If End Function
Une troisième technique fréquemment utilisée est la requête ping vers un ou plusieurs serveurs considérés comme ayant un bon uptime pour encore un certain temps (ce qui est une définition TRES floue..). On retrouve fréquemment parmis ces serveurs www.google.com www.yahoo.com, ... L'avantage (ou désavantage) est qu'il est possible alors d'indiquer qu'il n'y a pas de connection si un pare feu les bloque toutes. Un article à ce sujet est disponible sur la KB: http://support.microsoft.com/?kbid00197
-- Picalausa François
Jean Naimard
Merci pour infos de qualité J'ai reussi à faire ce que je voulais. J'ai utilisé le ping pour tester la connexion car l'autre methode ne detecte que la connexion du reseau apparament. Si vous avez un exemple avec winsock pour eviter le lancement de la fenetre dos ce serait bien car je ne suis pas un expert. En fait il suffit de faire: telnet 192.168.1.1 login: root Password: 1234 [root @ home]$: reboot
merci
"Picalausa François" a écrit dans le message de news:
Hello,
"Jean Naimard" a écrit dans le message de news: 4555994d$0$27380$
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les commandes telnet via des sendkeys. C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis preneur).
S'agit-il réellement de telnet utilisé en tant que client telnet, ou en tant que client "autre", puisque telnet effectue aussi bien cette tâche? Dans un cas comme dans l'autre, avec un contrôle Winsock, tu devrais pouvoir t'en sortir. Dans le premier cas, je te conseille cependant de lire la documentation associée à telnet: http://www.ietf.org/rfc/rfc0854.txt ou en français: http://abcdrfc.free.fr/rfc-vf/rfc854.html
Il ne me reste plus qu'a savoir si je suis connecté ou non si vous pouvez me fournir un bout de code...
Une méthode est proposée sur la FAQ: http://faq.vb.free.fr/index.php?questionw Celle-ci n'est cependant pas toujours très fiable. Une autre méthode, apparement plus complète avait été proposée par Partick Philippot: http://groups.google.fr/group/microsoft.public.fr.vb/msg/cba7bb8373d3b809 Dont voici une possible traduction VB: Private Const ERROR_SUCCESS As Long = 0
Private Type MIB_IPFORWARDROW dwForwardDest As Long dwForwardMask As Long dwForwardPolicy As Long dwForwardNextHop As Long dwForwardIfIndex As Long dwForwardType As Long dwForwardProto As Long dwForwardAge As Long dwForwardNextHopAS As Long dwForwardMetric1 As Long dwForwardMetric2 As Long dwForwardMetric3 As Long dwForwardMetric4 As Long dwForwardMetric5 As Long End Type
Private Type MIB_IPFORWARDTABLE dwNumEntries As Long table(0) As MIB_IPFORWARDROW End Type
Private Declare Function GetIpForwardTable _ Lib "Iphlpapi" _ ( _ pIpForwardTable As Any, _ pdwSize As Long, _ ByVal bOrder As Long _ ) _ As Long
Private Function IsConnected() As Boolean Dim TableSize As Long, IPFRows() As Long, i As Long
ReDim IPFRows(TableSize / 4) If GetIpForwardTable(IPFRows(0), TableSize, 1) = ERROR_SUCCESS Then For i = 1 To IPFRows(0) * 14 Step 14 'IPFRows(0) = MIB_IPFORWARDTABLE.dwNumEntries If IPFRows(i) = 0 Then 'PFRows(1 + (i - 1) * 14) > ' MIB_IPFORWARDTABLE.table(nIndex).dwForwardDest IsConnected = True
Exit For End If Next i End If End Function
Une troisième technique fréquemment utilisée est la requête ping vers un ou plusieurs serveurs considérés comme ayant un bon uptime pour encore un certain temps (ce qui est une définition TRES floue..). On retrouve fréquemment parmis ces serveurs www.google.com www.yahoo.com, ... L'avantage (ou désavantage) est qu'il est possible alors d'indiquer qu'il n'y a pas de connection si un pare feu les bloque toutes. Un article à ce sujet est disponible sur la KB: http://support.microsoft.com/?kbid00197
-- Picalausa François
Merci pour infos de qualité
J'ai reussi à faire ce que je voulais.
J'ai utilisé le ping pour tester la connexion car l'autre methode ne detecte
que la connexion du reseau apparament.
Si vous avez un exemple avec winsock pour eviter le lancement de la fenetre
dos ce serait bien car je ne suis pas un expert.
En fait il suffit de faire:
telnet 192.168.1.1
login: root
Password: 1234
[root @ home]$: reboot
merci
"Picalausa François" <fpicalausa@chez.com> a écrit dans le message de news:
eA1d4mXBHHA.4428@TK2MSFTNGP04.phx.gbl...
Hello,
"Jean Naimard" <Pas_de_spam@yahoo.fr> a écrit dans le message de news:
4555994d$0$27380$ba4acef3@news.orange.fr...
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les
commandes telnet via des sendkeys.
C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis
preneur).
S'agit-il réellement de telnet utilisé en tant que client telnet, ou en
tant que client "autre", puisque telnet effectue aussi bien cette tâche?
Dans un cas comme dans l'autre, avec un contrôle Winsock, tu devrais
pouvoir t'en sortir.
Dans le premier cas, je te conseille cependant de lire la documentation
associée à telnet:
http://www.ietf.org/rfc/rfc0854.txt
ou en français:
http://abcdrfc.free.fr/rfc-vf/rfc854.html
Il ne me reste plus qu'a savoir si je suis connecté ou non
si vous pouvez me fournir un bout de code...
Une méthode est proposée sur la FAQ:
http://faq.vb.free.fr/index.php?questionw
Celle-ci n'est cependant pas toujours très fiable. Une autre méthode,
apparement plus complète avait été proposée par Partick Philippot:
http://groups.google.fr/group/microsoft.public.fr.vb/msg/cba7bb8373d3b809
Dont voici une possible traduction VB:
Private Const ERROR_SUCCESS As Long = 0
Private Type MIB_IPFORWARDROW
dwForwardDest As Long
dwForwardMask As Long
dwForwardPolicy As Long
dwForwardNextHop As Long
dwForwardIfIndex As Long
dwForwardType As Long
dwForwardProto As Long
dwForwardAge As Long
dwForwardNextHopAS As Long
dwForwardMetric1 As Long
dwForwardMetric2 As Long
dwForwardMetric3 As Long
dwForwardMetric4 As Long
dwForwardMetric5 As Long
End Type
Private Type MIB_IPFORWARDTABLE
dwNumEntries As Long
table(0) As MIB_IPFORWARDROW
End Type
Private Declare Function GetIpForwardTable _
Lib "Iphlpapi" _
( _
pIpForwardTable As Any, _
pdwSize As Long, _
ByVal bOrder As Long _
) _
As Long
Private Function IsConnected() As Boolean
Dim TableSize As Long, IPFRows() As Long, i As Long
ReDim IPFRows(TableSize / 4)
If GetIpForwardTable(IPFRows(0), TableSize, 1) = ERROR_SUCCESS Then
For i = 1 To IPFRows(0) * 14 Step 14
'IPFRows(0) = MIB_IPFORWARDTABLE.dwNumEntries
If IPFRows(i) = 0 Then
'PFRows(1 + (i - 1) * 14) > ' MIB_IPFORWARDTABLE.table(nIndex).dwForwardDest
IsConnected = True
Exit For
End If
Next i
End If
End Function
Une troisième technique fréquemment utilisée est la requête ping vers un
ou plusieurs serveurs considérés comme ayant un bon uptime pour encore un
certain temps (ce qui est une définition TRES floue..). On retrouve
fréquemment parmis ces serveurs www.google.com www.yahoo.com, ...
L'avantage (ou désavantage) est qu'il est possible alors d'indiquer qu'il
n'y a pas de connection si un pare feu les bloque toutes.
Un article à ce sujet est disponible sur la KB:
http://support.microsoft.com/?kbid00197
Merci pour infos de qualité J'ai reussi à faire ce que je voulais. J'ai utilisé le ping pour tester la connexion car l'autre methode ne detecte que la connexion du reseau apparament. Si vous avez un exemple avec winsock pour eviter le lancement de la fenetre dos ce serait bien car je ne suis pas un expert. En fait il suffit de faire: telnet 192.168.1.1 login: root Password: 1234 [root @ home]$: reboot
merci
"Picalausa François" a écrit dans le message de news:
Hello,
"Jean Naimard" a écrit dans le message de news: 4555994d$0$27380$
J'ai trouvé le moyen de la rebooter en ouvrant une cdm et en ecrivant les commandes telnet via des sendkeys. C'est pas terrible mais ca marche (si vous avez un meilleur moyen je suis preneur).
S'agit-il réellement de telnet utilisé en tant que client telnet, ou en tant que client "autre", puisque telnet effectue aussi bien cette tâche? Dans un cas comme dans l'autre, avec un contrôle Winsock, tu devrais pouvoir t'en sortir. Dans le premier cas, je te conseille cependant de lire la documentation associée à telnet: http://www.ietf.org/rfc/rfc0854.txt ou en français: http://abcdrfc.free.fr/rfc-vf/rfc854.html
Il ne me reste plus qu'a savoir si je suis connecté ou non si vous pouvez me fournir un bout de code...
Une méthode est proposée sur la FAQ: http://faq.vb.free.fr/index.php?questionw Celle-ci n'est cependant pas toujours très fiable. Une autre méthode, apparement plus complète avait été proposée par Partick Philippot: http://groups.google.fr/group/microsoft.public.fr.vb/msg/cba7bb8373d3b809 Dont voici une possible traduction VB: Private Const ERROR_SUCCESS As Long = 0
Private Type MIB_IPFORWARDROW dwForwardDest As Long dwForwardMask As Long dwForwardPolicy As Long dwForwardNextHop As Long dwForwardIfIndex As Long dwForwardType As Long dwForwardProto As Long dwForwardAge As Long dwForwardNextHopAS As Long dwForwardMetric1 As Long dwForwardMetric2 As Long dwForwardMetric3 As Long dwForwardMetric4 As Long dwForwardMetric5 As Long End Type
Private Type MIB_IPFORWARDTABLE dwNumEntries As Long table(0) As MIB_IPFORWARDROW End Type
Private Declare Function GetIpForwardTable _ Lib "Iphlpapi" _ ( _ pIpForwardTable As Any, _ pdwSize As Long, _ ByVal bOrder As Long _ ) _ As Long
Private Function IsConnected() As Boolean Dim TableSize As Long, IPFRows() As Long, i As Long
ReDim IPFRows(TableSize / 4) If GetIpForwardTable(IPFRows(0), TableSize, 1) = ERROR_SUCCESS Then For i = 1 To IPFRows(0) * 14 Step 14 'IPFRows(0) = MIB_IPFORWARDTABLE.dwNumEntries If IPFRows(i) = 0 Then 'PFRows(1 + (i - 1) * 14) > ' MIB_IPFORWARDTABLE.table(nIndex).dwForwardDest IsConnected = True
Exit For End If Next i End If End Function
Une troisième technique fréquemment utilisée est la requête ping vers un ou plusieurs serveurs considérés comme ayant un bon uptime pour encore un certain temps (ce qui est une définition TRES floue..). On retrouve fréquemment parmis ces serveurs www.google.com www.yahoo.com, ... L'avantage (ou désavantage) est qu'il est possible alors d'indiquer qu'il n'y a pas de connection si un pare feu les bloque toutes. Un article à ce sujet est disponible sur la KB: http://support.microsoft.com/?kbid00197
-- Picalausa François
Jean-marc
"Jean Naimard" a écrit dans le message de news: 45574cc3$0$27408$
Merci pour infos de qualité J'ai reussi à faire ce que je voulais. J'ai utilisé le ping pour tester la connexion car l'autre methode ne detecte que la connexion du reseau apparament. Si vous avez un exemple avec winsock pour eviter le lancement de la fenetre dos ce serait bien car je ne suis pas un expert. En fait il suffit de faire: telnet 192.168.1.1 login: root Password: 1234 [root @ home]$: reboot
merci
Hello,
Pour un ping sans fenêtre DOS, tout est la: http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B300197
"Jean Naimard" <Pas_de_spam@yahoo.fr> a écrit dans le message de news:
45574cc3$0$27408$ba4acef3@news.orange.fr...
Merci pour infos de qualité
J'ai reussi à faire ce que je voulais.
J'ai utilisé le ping pour tester la connexion car l'autre methode ne
detecte que la connexion du reseau apparament.
Si vous avez un exemple avec winsock pour eviter le lancement de la
fenetre dos ce serait bien car je ne suis pas un expert.
En fait il suffit de faire:
telnet 192.168.1.1
login: root
Password: 1234
[root @ home]$: reboot
merci
Hello,
Pour un ping sans fenêtre DOS, tout est la:
http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B300197
"Jean Naimard" a écrit dans le message de news: 45574cc3$0$27408$
Merci pour infos de qualité J'ai reussi à faire ce que je voulais. J'ai utilisé le ping pour tester la connexion car l'autre methode ne detecte que la connexion du reseau apparament. Si vous avez un exemple avec winsock pour eviter le lancement de la fenetre dos ce serait bien car je ne suis pas un expert. En fait il suffit de faire: telnet 192.168.1.1 login: root Password: 1234 [root @ home]$: reboot
merci
Hello,
Pour un ping sans fenêtre DOS, tout est la: http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B300197