Page 1 sur 1

Monitoring réseau en PureBasic

Publié : mer. 24/juin/2026 12:18
par Mathew
Salut tout le monde,

En ce moment, je suis en train de bricoler un petit programme en PureBasic qui me permettrait de suivre les changements de connexion réseau sur mon PC portable. Comme je bouge souvent, je passe de temps en temps du Wi-Fi au partage de connexion mobile, et récemment j'ai aussi testé une eSIM pour être connecté plus facilement lors de déplacements. Pour ces essais, j’avais pris quelques informations sur https://esimdeals.io/ afin de comparer les différentes solutions de connectivité.
Je me demandais donc quelle était la meilleure façon de détecter sou sPureBasic quand une adresse IP change ou qu'une autre interface réseaudevient active. Mon but est surtout de consigner ces événements dans un fichier log afin de les analyser ensuite. Si quelques uns ont déjà fait quelque chose de similaire ou connaissent des API Windows adaptées à ce besoin, je serais ravi d'avoir vos conseils. Merci à l'avance !

Re: Monitoring réseau en PureBasic

Publié : mer. 24/juin/2026 12:55
par Ar-S
Tu as plusieurs solutions.
Soit tu check l'IP en boucle via ipconfig dans ton terminal et tu la récupère, soit tu te places un fichier php si tu as de quoi l'héberger qui check ton ip distante. Avec un timer tu fais ça toute les x sec ou minutes. Si ancienne ip différe de nouvelle ip alors log.

Re: Monitoring réseau en PureBasic

Publié : mer. 24/juin/2026 14:55
par TazNormand
Salut,

Tu parles des adresses IP locales (LAN) ou bien de ton adresse IP publique visible sur internet ?

Si c'est ton/tes adresses LAN, regarde du côté de ExamineIPAddresses()

Si c'est ton adresse ip publique, tu peux utiliser le site api.ipify.org, voici un petit code basé sur l'exemple de la commande HTTPInfo() :

Code : Tout sélectionner

HttpRequest=HTTPRequest(#PB_HTTP_Get,"https://api.ipify.org?format=json")
If HttpRequest
  Debug "Réponse: " + HTTPInfo(HTTPRequest, #PB_HTTP_Response)
  Debug "Status : " + HTTPInfo(HTTPRequest, #PB_HTTP_StatusCode)
  
  FinishHTTP(HTTPRequest)
Else
  Debug "La requête a échoué"
EndIf
A toi de faire le code pour checker régulièrement que la valeur de retour de ipify.org n'a pas changé

Tu peux enlever le "?format=json" dans le HTTPRequest() si tu veux l'ip publique en format brut

Re: Monitoring réseau en PureBasic

Publié : lun. 29/juin/2026 14:17
par Mathew
Hello, merci pour vos réponses !

`ExamineIPAddresses()` semble bien adapté pour les IP locales, et je vais aussi tester `api.ipify.org` pour l'IP publique.
Je me demande juste s'il existe une solution basée sur les notifications de l'API Windows, afin d'éviter un contrôle en boucle. Si quelqu'un a déjà fait ça en PureBasic, je suis preneur de retours.