J'ai trouvé Déterminer la vitesse de connexion du réseau et maintenant j'essaie de corréler les données de Win32_PerfRawData_Tcpip_NetworkInterface avec Win32_NetworkAdapter (ou Win32_NetworkAdapterConfiguration).
Sur la classe Win32_PerfRawData_Tcpip_NetworkInterface
je ne vois pas d'index ou de clé unique que je peux utiliser pour référencer Win32_NetworkAdapterConfiguration
ou Win32_NetworkAdapter
. J'ai essayé d'utiliser le Nom
dans Win32_PerfRawData_Tcpip_NetworkInterface
et Win32_NetworkAdapter
, mais ils semblent toujours différents.
par exemple
Nom : Connexion réseau Intel(R) PRO/1000 PL
contre
Nom : Connexion réseau Intel[R] PRO_1000 PL
Des conseils ?
Merci d'avance,
Milde
\===
Peut-être que ce morceau de code vous aidera à m'aider les gars :)
# J'ai obtenu l'ID de périphérique d'une carte NIC et je l'utilise pour obtenir l'"ID de connexion Net":
$objWMIService = Win32::OLE->GetObject("winmgmts:\\\\$computer\\root\\CIMV2") or die "Sortie : échec de la connexion WMI. \n";
$colNicSetts = $objWMIService->ExecQuery(
"SELECT * FROM Win32_NetworkAdapter Where DeviceID = '$ID'", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly);
foreach my $objItem (in $colNicSetts){
$NetConnID = $objItem->{NetConnectionID};
}
# => $NetConnID stocke "Connexion réseau Intel(R) PRO/1000 PL".
# Maintenant j'ai essayé d'obtenir la vitesse de connexion avec quelque chose comme ça :
$collItems = $objWMIService->ExecQuery(
"SELECT * FROM Win32_PerfRawData_Tcpip_NetworkInterface Where Name = '$NetConnID'", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly);
foreach my $objItem (in $collItems){
$LinkSpeed = $objItem->{CurrentBandwidth};
}
# "Win32_PerfRawData_Tcpip_NetworkInterface" contient "Connexion réseau Intel[R] PRO_1000 PL"
# "Connexion réseau Intel(R) PRO/1000 PL" != Connexion réseau Intel[R] PRO_1000 PL
# => $LinkSpeed vide