我找到了确定网络连接链接速度 ,现在我正在尝试将Win32_PerfRawData_Tcpip_NetworkInterface中的数据与 Win32_NetworkAdapter(或Win32_NetworkAdapterConfiguration)相关联。
在课堂上,Win32_PerfRawData_Tcpip_NetworkInterface
我看不到任何可用于引用
Win32_NetworkAdapterConfiguration
或Win32_NetworkAdapter.
I tried to use the
命名in
Win32_PerfRawData_Tcpip_NetworkInterface
and
Win32_NetworkAdapter 的索引或唯一键,但它们看起来仍然不同。
例如
名称: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