今天看了一下 windows 如何获取流量的接口

来源:互联网 发布:图片搜索引擎 知乎 编辑:程序博客网 时间:2024/04/27 20:44

现先将代码贴出来,由于太晚了,该睡觉了,明天再研究。

pmi->table[i].dwInOctets;就是下载的流量. 

pmi->dwNumEntries 表示你机器上网卡的数量,会按照命令提示符(cmd)中的ipconfig /all 命令列出来的顺序相同。注GetIfTable(pmi, &dwSize, TRUE);的第三个参数为TRUE才会是这样排序的。


代码如下:

MIB_IFTABLE *pmi;

pmi = (MIB_IFTABLE *)malloc(sizeof(MIB_IFTABLE));
ULONG dwSize = sizeof(MIB_IFTABLE);

DWORD errCode = GetIfTable(pmi, &dwSize, TRUE);
if (ERROR_INSUFFICIENT_BUFFER == errCode)
{
free (pmi);
pmi = (MIB_IFTABLE *)malloc(dwSize);
}
errCode = GetIfTable(pmi, &dwSize, TRUE);
if (NO_ERROR != errCode)
{
return ;
}
for (int i = 0; i < pmi->dwNumEntries; ++ i)
{
int xxx = pmi->table[i].dwInOctets;
}


return ;



原创粉丝点击