程序找错(附原码)
该段程序欲获得某网卡的流量:
DWORD IfNum;
GetNumberOfInterfaces(&IfNum); //获得接口数量
MIB_IFTABLE *ifTable = new MIB_IFTABLE[IfNum];
DWORD dwSize = sizeof(MIB_IFTABLE)*2*IfNum; //??????????
GetIfTable(ifTable, &dwSize, true); // 得到接口列表
ifMib.dwIndex = ifTable->table[1].dwIndex ;//?????????????
GetIfEntry(&ifMib);//获取接口的各种信息,然后读取里面的dwInOctects和dwOutOctects
return ifMib.dwOutOctets;
总是在标问号处。第一处:GetIfTable所用第二个参数与接口数量有什么关系?我试验后结果是要乘2;
第二处:GetIfTable获得的接口有多个,其中包括一个物理上不存在的MS Feedback接口,如何确定接口的类型(比如哪个接的是WAN,哪个接的是LAN);
第三处:为什么有时候得到的流量是错误的(比如是0)?
多谢各位热心解答!
问题点数:0、回复次数:2Top
1 楼yeahchang(Studying PKI)回复于 2003-02-06 17:50:10 得分 0
upTop
2 楼oishi(农夫XP)回复于 2003-02-06 18:57:36 得分 0
up
Top




