ネットワーク接続のリンク速度の決定が見つかりました。今、 Win32_PerfRawData_Tcpip_NetworkInterface からのデータを Win32_NetworkAdapter (またはWin32_NetworkAdapterConfiguration ) と関連付けようとしています。
クラスには、 Win32_PerfRawData_Tcpip_NetworkInterface Win32_NetworkAdapterWin32_PerfRawData_Tcpip_NetworkInterface
を参照
Win32_NetworkAdapterConfiguration
またはWin32_NetworkAdapter.
I tried to use the
名前付けするために使用できるインデックスまたは一意のキーは表示されませんが、それでもそれらは異なって見えます。in
and
例えば
名前: Intel(R) PRO/1000 PL ネットワーク コネクション
対
名前: Intel[R] PRO_1000 PL ネットワーク接続
ヒントはありますか?
前もって感謝します、
マイルド
===
たぶん、そのコードはあなたが私を助けるのに役立つでしょう:)
# I got the DeviceID of a NIC and use it to get the "NetConnection ID":
$objWMIService = Win32::OLE->GetObject("winmgmts:\\\\$computer\\root\\CIMV2") or die "Exit: WMI connection failed. \n";
$colNicSetts = $objWMIService->ExecQuery(
"SELECT * FROM Win32_NetworkAdapter Where DeviceID = '$ID'", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly);
foreach my $objItem (in $colNicSetts){
$NetConnID = $objItem->{NetConnectionID};
}
# => $NetConnID stores "Intel(R) PRO/1000 PL Network Connection".
# Now I tried to get the Link Speed with sth. like that:
$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" contains "Intel[R] PRO_1000 PL Network" Connection
# "Intel(R) PRO/1000 PL Network Connection" != Intel[R] PRO_1000 PL Network Connection
# => $LinkSpeed empty