日期:2014-05-17  浏览次数:21262 次

使用Win32_NetworkAdapter,获取Speed的值错误
以前一直没有问题,Win7,Win2003,Win2008的系统上都测试过没有问题。
但是最近在一台有双网卡的机器安装Win7 32Bit的机器上执行时出错,取出的值错误。如下:
instance of Win32_NetworkAdapter                                                   
{                                                                                 
..........................
        ProductName = "Intel(R) 679v Network Connection";                    
ServiceName="e1cexpress";                                                    
Speed="9223372036854775807";                                                 
..........................
};                                

instance of Win32_NetworkAdapter                        
{                                                       
....................................
ProductName = "Intel(R) Wireless-N 5200"                                
        Speed = "5500000";                                  
        ....................................
};  
以上2个关于Speed的取值都是错误的,因为计算后一个为900000Mbps,一个为5Mbps。正常取出后
应该一个是1000Mbps,一个是54Mbps,但是现在不明白为什么使用Win32 API后会取出以上的值出来。
另外Wireless-N 5200 这个网卡的Speed值总变化,这是为什么,因为无线网卡的原因吗?
以前在很多机器上运行过,取出的网卡Speed和品牌标注的一样,在不同的OS上也运行过,现在只有这台机器的有问题,不清楚什么原因。
C#? win7 网卡