Achei tambem isto aqui na NET veja se ajuda.
SAISIE1=""
ent est composé de
wszName est une chaîne ASCIIZ de 512
dwIndex est un entier // index of the interface
dwType est un entier // type of interface
dwMtu est un entier // max transmission unit
dwSpeed est un entier // speed of the interface
dwPhysAddrLen est un entier // length of physical address
bPhysAddr est une chaîne ASCIIZ de 8 // physical address of adapter
dwAdminStatus est un entier // administrative status
dwOperStatus est un entier // operational status
dwLastChange est un entier // last time operational status changed
dwInOctets est un entier // octets received
dwInUcastPkts est un entier // unicast packets received
dwInNUcastPkts est un entier // non-unicast packets received
dwInDiscards est un entier // received packets discarded
dwInErrors est un entier // erroneous packets received
dwInUnknownProtos est un entier // unknown protocol packets received
dwOutOctets est un entier // octets sent
dwOutUcastPkts est un entier // unicast packets sent
dwOutNUcastPkts est un entier // non-unicast packets sent
dwOutDiscards est un entier // outgoing packets discarded
dwOutErrors est un entier // erroneous packets sent
dwOutQLen est un entier // output queue length
dwDescrLen est un entier // length of bDescr member
bDescr est une chaîne ASCIIZ de 256 // interface description
FIN
ch est une chaîne=""
ind est un entier
tail est un entier
name est une chaîne ASCIIZ de 256
diment est un entier = Dimension(ent)
res est un entier
res = AppelDLL32("Iphlpapi","GetIfTable",0,&tail,0)
SI tail>0 ALORS
hmem est un entier = AppelDLL32("kernel32","GlobalAlloc",0x40,tail)
res = AppelDLL32("Iphlpapi","GetIfTable",hmem,&tail,0)
adr est un entier = hmem + 4
nb est un entier
AppelDLL32("kernel32","RtlMoveMemory",&nb,hmem,4)
POUR ind = 1 A nb
AppelDLL32("kernel32","RtlZeroMemory",&ent,diment)
AppelDLL32("kernel32","RtlMoveMemory",&ent,adr,diment)
SAISIE1 += "Index : "+ent.dwIndex + RC
SAISIE1 += "Type : "+ent.dwType + RC
SAISIE1 += "Speed : "+ent.dwSpeed + RC
SAISIE1 += "Mtu : "+ent.dwMtu + RC
SAISIE1 += "Adr len : "+ent.dwPhysAddrLen + RC
SI ent.dwPhysAddrLen>0 ALORS
i1 est un entier
in1 est un entier
ch=""
POUR i1 = 1 A ent.dwPhysAddrLen
AppelDLL32("kernel32","RtlMoveMemory",&in1 , &ent.bPhysAddr + i1 - 1 , 1 )
ch += NumériqueVersChaine(in1,"02X")
SI i1<ent.dwPhysAddrLen ALORS
ch+="-"
FIN
FIN
FIN
SAISIE1 += "Mac : " + ch +RC
SAISIE1 += "Status : "+ent.dwAdminStatus + RC
SAISIE1 += "Operstatus : "+ent.dwOperStatus + RC
SAISIE1 += "LastChange : "+ent.dwLastChange + RC
SAISIE1 += "In octets : "+ent.dwInOctets + RC
SAISIE1 += "In ucast : "+ent.dwInUcastPkts + RC
SAISIE1 += "In NU Cast : "+ent.dwInNUcastPkts + RC
SAISIE1 += "In Discards : "+ent.dwInDiscards + RC
SAISIE1 += "In Error : "+ent.dwInErrors + RC
SAISIE1 += "In Unknow : "+ent.dwInUnknownProtos + RC
SAISIE1 += "Out Octets : "+ent.dwOutOctets + RC
SAISIE1 += "Out Ucast : "+ent.dwOutUcastPkts + RC
SAISIE1 += "Out NU Cast : "+ent.dwOutNUcastPkts + RC
SAISIE1 += "Out Discards : "+ent.dwOutDiscards + RC
SAISIE1 += "Out Errors : "+ent.dwOutErrors + RC
SAISIE1 += "Out Qlen : "+ent.dwOutQLen + RC
SAISIE1 += "Desciption : "+ent.bDescr + RC+RC
adr += diment
FIN
AppelDLL32("kernel32","GlobalFree",hmem)
FIN
Abraco
MarceloCruz