年末大求救SOS:(我分快没了)
如何取当前网卡速率如(100Mbps/10Mbps/...) ?见Window资源管理器中。或是知道如何取到网络使用率(Window资源管理器中的“网络应用”英文是:Network Utilization)也行。因为我现在想得到网络使用率,我的方法是用Bytes Total/sec * 8 / 1024 /1024 / 100Mbps,因为网卡速率不同有100Mbps、10Mbps、1000Mbps,用户也可以将100Mbps的改成10Mbps的双式或是半双工...,在Windows的Cmd中命令中有没有可以查看到这个信息的也行。
如何得到网卡的MacAddress==就不用说了,这些我都会。先谢了!
如何取当前网卡速率如(100Mbps/10Mbps/...) ?见Window资源管理器中。或是知道如何取到网络使用率(Window资源管理器中的“网络应用”英文是:Network Utilization)也行。因为我现在想得到网络使用率,我的方法是用Bytes Total/sec * 8 / 1024 /1024 / 100Mbps,因为网卡速率不同有100Mbps、10Mbps、1000Mbps,用户也可以将100Mbps的改成10Mbps的双式或是半双工...,在Windows的Cmd中命令中有没有可以查看到这个信息的也行。
如何得到网卡的MacAddress==就不用说了,这些我都会。先谢了!
512 KB 理论速度是64kB下载速度。我家的宽带偶尔非到70多k。
本地连接
速度: 100.0Mbps
状态: 已连接上
留下Email,我给你点代码参考
http://www.codeproject.com/csharp/networkmonitorl.asp
下面的就是我列出来的属性代码的。
// ManagementObjectSearcher mos = new ManagementObjectSearcher("Select * From Win32_NetworkAdapter");
// ManagementObjectCollection moc = mos.Get();
// foreach(ManagementObject mo in moc) {
// foreach(PropertyData pd in mo.Properties) {
// if(pd.Value != null) {
// Console.WriteLine(pd.Name + " ***** " + pd.Value.ToString());
// } else {
// Console.WriteLine(pd.Name + "########");
// }
// }
// mo.Dispose();
// }
可编写成DLL完成网口检测工作,并仅返回检测结果即可。VC代码(对不起本人只会VC,不过DLL也只能用VC,C#是写不了的.):
DWORD dwOutBufLen=0;
PIP_ADAPTER_INFO pAdapterInfo=NULL,pAdapter=NULL;
MIB_IFROW zSNMP;
char sTemp[20];
int iReturn;
iReturn=GetAdaptersInfo(pAdapterInfo,&dwOutBufLen);
if(iReturn!=ERROR_BUFFER_OVERFLOW)
{
return 0;
}
pAdapterInfo =(PIP_ADAPTER_INFO) HeapAlloc(GetProcessHeap(), 0, dwOutBufLen);
iReturn=GetAdaptersInfo(pAdapterInfo,&dwOutBufLen);
if(iReturn!=ERROR_SUCCESS)
{
HeapFree(GetProcessHeap(), 0, pAdapterInfo);
return 0;
}
pAdapter=pAdapterInfo;
//find if there is ppp adapter
while(pAdapter!=NULL )
{
zSNMP.dwIndex = pAdapter->Index;
iReturn=GetIfEntry(&zSNMP);
if(iReturn!=NO_ERROR)
return 0;
m_iIfSpeed=zSNMP.dwSpeed/(1000*1000); //----------你要的速率
pAdapter=pAdapter->Next;
}