乙個輕量級的網路流量監控程式,只能在區域網中使用。
主要用到getiftable(),和getifentry() 兩個api。介面用qt做,可以隱藏在系統托盤中。
截圖核心**如下
[cpp]view plain
copy
void
netflow::getflow()
dwsize = sizeof
(mib_iftable);
if(getiftable(piftable, &dwsize, 0) == error_insufficient_buffer)
} if
((dwretval = getiftable(piftable, &dwsize, 0)) == no_error)
return
; }
printf("/tnum entries: %ld/n/n"
, piftable->dwnumentries);
// 列舉所有介面
for(i = 0; i
int) piftable->dwnumentries; i++)
} else
} } else
} free(piftable);
free(pifrow);
// 計算流量,速度=總流量 / 所經過的時間
float
inspeed = (inflow - preinflow) / ((
float
)(currtime - pretime) / 1000.0f);
float
outspeed = (outflow - preoutflow) / ((
float
)(currtime - pretime) / 1000.0f);
char
buffer[100];
sprintf(buffer, "download: %.2fk/s upload: %.2fk/s"
, inspeed / 1000.0f, outspeed / 1000.0f);
bodyedit->settext(buffer);
trayicon->settooltip(qstring(buffer));
}
獲取網路流量
獲取網路流量 int getnetworkpercent 第一次呼叫 getiftable 獲取必要資訊寫入 dwsize sizeof mib iftable if getiftable piftable,dwsize,false error insufficient buffer 效能計數器獲取...
獲取手機應用流量TrafficStats的使用
安卓是基於linux改編的,在2.2版本中加入了trafficstats類,通過使用這個類可以輕鬆獲取到手機從開機到使用本類時手機所使用的流量以及單應用的上下行流量。在安卓2.2版本之前如果需要查詢流量,需要利用linux提供的方法來讀取流浪儲存的檔案,這個檔案在 proc uid stat uid...
手機流量資訊的獲取
獲取手機流量的工具類 市面上的一些流量統計軟體,一般是定義乙個資料庫,手機關機的時候會有乙個廣播事件 android.intent.action.action shutdown 監聽到這個廣播事件,然後存到資料庫。public class trafficutil 獲取手機2g 3g產生的總流量 re...