ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Lister les adresses IP de la machine   



L'auteur

Francis Faure
France France
Membre Actif (personne physique)
# 0000000001
enregistré le 11/10/2004

http://www.wanagain.net
56 ans
Faure Francis
de la société Design Or Decline
Fiche personnelle


Note des membres
pas de note

Contributions > 05 - API et appels systèmes > IP

Lister les adresses IP de la machine
# 0000000308
ajouté le 10/04/2006 18:21:06 et modifié le 10/05/2006
consulté 9458 fois
Niveau initié

Version(s) Foxpro :
VFP 9.0

Description
Obtenir la liste des adresses IP de la machine.
Code source :
* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iphlp/iphlp/getipaddrtable.asp


* les adresses IP de la machine

DECLARE INTEGER GetIpAddrTable IN iphlpapi;
    STRING  @ pIpAddrTable,;
    INTEGER @ pdwSize,;
    INTEGER   bOrder
DECLARE STRING inet_ntoa IN ws2_32 INTEGER in_addr

pdwSize =0
=GetIpAddrTable (NULL, @pdwSize, 1)

pIpAddrTable = REPLICATE(CHR(0), pdwSize)
=GetIpAddrTable (@pIpAddrTable, @pdwSize, 1)

nombre = buf2dword(SUBSTR(pIpAddrTable, 1, 4))

FOR i=1 TO nombre
  Adresse = INET_NTOA(buf2dword(SUBSTR(pIpAddrTable, 5 + (i-1)*24, 4)))
  Masque  = INET_NTOA(buf2dword(SUBSTR(pIpAddrTable, 13 + (i-1)*24, 4)))
  ? adresse + "/" + masque
Next

FUNCTION buf2dword(cBuffer)
RETURN Asc(SUBSTR(cBuffer, 1,1)) + ;
    Asc(SUBSTR(cBuffer, 2,1)) * 256 +;
    Asc(SUBSTR(cBuffer, 3,1)) * 65536 +;
    Asc(SUBSTR(cBuffer, 4,1)) * 16777216
Commentaires
le 10/04/2006, FredA a écrit :
simple et efficace.
y a t'il des restrictions? (OS ou autre)

le 10/04/2006, Francis Faure a écrit :
voir le lien de msdn dans le source,
je peux lire :
Requirements
Client Requires Windows Vista, Windows XP, Windows 2000 Professional, Windows NT Workstation 4.0 SP4 and later, Windows Me, or Windows 98.
Server Requires Windows Server "Longhorn", Windows Server 2003, Windows 2000 Server, or Windows NT Server 4.0 SP4 and later.

le 10/04/2006, Olivier Hamou a écrit :
Bravo francis,
Contribution fort utile !
Sans faire de mauvais de jeu mots ;o)



www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3