亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? unetmon.pas

?? 統(tǒng)計(jì)網(wǎng)絡(luò)流量的DELPHI原程序代碼,for xp/2000/2003
?? PAS
字號(hào):
unit uNetMon;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, IPHelper, IPHLPAPI, StdCtrls, ComCtrls, Buttons, Grids;

const
   version = '1.0';
type
  TIPForm = class( TForm )
    Timer1: TTimer;
    GroupBox1: TGroupBox;
    btnQuit: TSpeedButton;
    cbOnTop: TCheckBox;
    btnClear: TSpeedButton;
    btnStopCap: TSpeedButton;
    btnStartCap: TSpeedButton;
    sgMIB: TStringGrid;
    procedure Timer1Timer( Sender: TObject );
    procedure FormCreate( Sender: TObject );
    procedure btnStartCapClick(Sender: TObject);
    procedure btnStopCapClick(Sender: TObject);
    procedure btnClearClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure cbOnTopClick(Sender: TObject);
    procedure btnQuitClick(Sender: TObject);
  private
    { Private declarations }
    function GetIPFromIFIndex( InterfaceIndex: integer ): string;
    procedure InitGrid( MibArr: IpHlpAPI.TMibIFArray );
    procedure CaptureMIBData( InitFlag: boolean );
    procedure ClearCounters;
    procedure Data2Grid( MIBArr: IpHlpAPI.TMIBIFArray );
  public
    { Public declarations }
  end;

  //用于統(tǒng)計(jì)數(shù)據(jù)結(jié)構(gòu)
  TStatistics = record
    dwInterfaceIndex: DWORD;
    ActiveCountIn,      {當(dāng)前流入的數(shù)據(jù)量}
    ActiveCountOut,     {當(dāng)前流出的數(shù)據(jù)量}
    PrevCountIn,        {前次流入的數(shù)據(jù)量}
    PrevCountOut,       {前次流出的數(shù)據(jù)量}
    TotalIn,            {總的流入數(shù)據(jù)量}
    TotalOut,           {總的流出數(shù)據(jù)量}
    InPerSec,           {最后一次統(tǒng)計(jì)的流入速度}
    OutPerSec,          {最后一次統(tǒng)計(jì)的流出速度}
    PeakInPerSec,       {最高的流入流出速度}
    PeakOutPerSec : DWORD;
  end;
  TStatArr = array of TStatistics;

var
  IPForm      : TIPForm;
  StatArr     : TStatArr;

implementation

{$R *.DFM}

//初始化
procedure TIPForm.FormCreate( Sender: TObject );
begin
    Caption := Caption + ' ' + Version;
    sgMib.Cells[0,0] := '網(wǎng)卡信息';
    sgMib.Cells[1,0] := 'MAC地址';
    sgMIB.Cells[2,0] := 'IP地址';
    sgMIB.Cells[3,0] := '流入(byte/s)';
    sgMIB.Cells[4,0] := '最高(in/s)';
    sgMIB.Cells[5,0] := '平均(in/s)';
    sgMIB.Cells[6,0] := '流出(oct/s)';
    sgMIB.Cells[7,0] := '最高(byte/s)';
    sgMIB.Cells[8,0] := '平均(out/s)';
    //設(shè)置統(tǒng)計(jì)間隔為1秒
    Timer1.Interval := 1000;
    CaptureMIBData( true );
end;

//關(guān)閉窗口,釋放資源
procedure TIPForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    Timer1.OnTimer := nil;
    Action := caFREE;
end;

procedure TIPForm.btnQuitClick(Sender: TObject);
begin
    Close;
end;

//使窗口處于最上層
procedure TIPForm.cbOnTopClick(Sender: TObject);
begin
    if cbOnTop.Checked = true then
        FormStyle := fsSTAYONTOP
    else
        FormStyle := fsNORMAL;
end;

//使用定時(shí)器統(tǒng)計(jì)
procedure TIPForm.Timer1Timer( Sender: TObject );
begin
    Timer1.Enabled := false;
    CaptureMIBData( false );
    Timer1.Enabled := true;
end;

//統(tǒng)計(jì)開始
procedure TIPForm.btnStartCapClick(Sender: TObject);
begin
    btnStartCap.Enabled := false;
    btnStopCap.Enabled  := true;
    ClearCounters;
    Timer1.Enabled := true;
end;

//統(tǒng)計(jì)停止
procedure TIPForm.btnStopCapClick(Sender: TObject);
begin
    btnStartCap.Enabled := true;
    btnStopCap.Enabled  := false;;
    Timer1.Enabled := false;
end;

//清除統(tǒng)計(jì)
procedure TIPForm.btnClearClick(Sender: TObject);
begin
    ClearCounters;
end;

//取得MIB結(jié)構(gòu)的數(shù)據(jù)并初始化或顯示統(tǒng)計(jì)
procedure TIPForm.CaptureMIBData( InitFlag: boolean );
var
    MibArr : IpHlpAPI.TMIBIfArray;
begin
    Get_IfTableMIB( MibArr );
    if InitFlag  then
        InitGrid( MibArr )
    else
        Data2Grid( MibArr );
end;

//清除統(tǒng)計(jì)數(shù)據(jù)
procedure TIPForm.ClearCounters;
begin
    CaptureMIBData( true );
    CaptureMIBData( false);
end;

//根據(jù)取得的信息設(shè)置表格顯示信息
procedure TIPForm.Data2Grid( MIBArr: IpHlpAPI.TMIBIFArray );
var
    i : integer;
begin
    for i := low(MIBArr) to High(MIBArr) do
    with MIBArr[i] do
    begin
        with StatArr[i] do
        begin
            InPerSec  := dwInOctets - PrevCountIn;
            inc(TotalIn, InPerSec);
            if InPerSec > 0 then
                inc(ActivecountIn);
            PrevCountIn := dwInOctets;
            OutPerSec := dwOutOctets - PrevCountOut;
            inc(TotalOut,OutPerSec);
            if OutPerSec > 0 then
                inc(ActivecountOut);
            PrevCountOut  := dwOutOctets;
            if InPerSec > PeakInPerSec then
                PeakInPersec := InPersec;
            if OutPerSec > PeakOutPerSec then
                PeakOutPerSec := OutPerSec;
            //更新表格顯示
            sgMIB.Cells[3, i+1] :=  IntToStr( InPerSec) ;
            sgMIB.Cells[4, i+1] :=  IntToStr( PeakInPerSec ) ;
            if ActiveCountIn > 0 then
                sgMIB.Cells[5, i+1] :=
                IntToStr( TotalIn div ActiveCountIn)
            else
                sgMIB.Cells[5, i+1] := '  --  ';
                sgMIB.Cells[6, i+1] :=  IntToStr( OutPerSec) ;
                sgMIB.Cells[7, i+1] :=  IntToStr( PeakOutPerSec) ;
            if ActiveCountOut > 0 then
                sgMIB.Cells[8, i+1] :=
                IntToStr( TotalOut div ActiveCountOut)
            else
            sgMIB.Cells[8, i+1] := '  --  ';
        end;
    end;
end;

//根據(jù)序號(hào)從列表中取得IP地址
function TIPForm.GetIPFromIFIndex( InterfaceIndex: integer ): string;
var
 i:  integer;
 IPArr : TMIBIPAddrArray;
begin
   Result := '!not_found!';
   Get_IPAddrTableMIB( IpArr );
   if Length(IPArr) > 0 then
     for i := low(IPArr) to High(IPArr) do
       if IPArr[i].dwIndex = InterfaceIndex then
       begin
         Result := IPAddr2Str(IParr[i].dwAddr);
         BREAK;
       end;
end;

//初始化統(tǒng)計(jì)變量與表格
procedure TIpForm.InitGrid( MibArr: IpHlpAPI.TMibIFArray );
var
    i     : integer;
    IPArr : TMibIPAddrArray;
    Descr: string;
begin
    if Length(MibArr) > 0 then
    begin
        sgMib.RowCount := succ(Length( MibArr ));
        SetLength( StatArr, Length(MibArr));
        for i := low(MIBArr) to High(MIBArr) do
        with MIBArr[i] do
        begin
            StatArr[i].ActiveCountIn := 0;
            StatArr[i].ActiveCountOut:= 0;
            StatArr[i].PrevCountIn := dwInOctets;
            StatArr[i].PrevCountOut:= dwOutOctets;
            StatArr[i].TotalIn := 0;
            StatArr[i].TotalOut:= 0;
            StatArr[i].InPerSec:= 0;
            StatArr[i].OutPerSec:= 0;
            StatArr[i].PeakInPerSec := 0;
            StatArr[i].PeakOutPerSec:=0;
            SetLength( Descr, pred(dwDescrLen));
            move(bDescr, Descr[1], pred(dwDescrLen));
            //網(wǎng)卡描述信息
            sgMIB.Cells[0, succ(i)] := Trim(Descr) ;
            //網(wǎng)卡MAC地址
            sgMIB.Cells[1, succ(i)] := MacAddr2Str( TMacAddress( bPhysAddr ), dwPhysAddrLen );
            //網(wǎng)卡IP地址
            sgMIB.Cells[2, succ(i)] := GetIPFromIFIndex( MIBArr[i].dwIndex);
        end;
    end;
end;
end.

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本久久精品电影| 久久精品人人做| 欧美成人国产一区二区| 欧美韩国一区二区| 日韩成人伦理电影在线观看| 成人短视频下载| 欧美大胆人体bbbb| 一级女性全黄久久生活片免费| 韩国午夜理伦三级不卡影院| 欧美在线视频你懂得| 国产精品入口麻豆九色| 激情综合色综合久久综合| 欧美系列在线观看| 国产精品国模大尺度视频| 美脚の诱脚舐め脚责91| 91极品美女在线| 中文字幕字幕中文在线中不卡视频| 久久精品国产一区二区| 欧美一区二区三区人| 亚洲资源在线观看| 日本乱人伦aⅴ精品| 中文字幕一区二区三区不卡在线 | 精品国产一二三| 亚洲电影一级黄| 色哟哟欧美精品| 亚洲色图色小说| 色老汉一区二区三区| 国产精品久久久久久久久快鸭| 国产精品一区二区在线播放 | 色欧美乱欧美15图片| 国产精品蜜臀在线观看| 国产一区999| 日韩欧美电影在线| 蜜桃一区二区三区四区| 欧美成人a∨高清免费观看| 青青草国产成人av片免费| 欧美精品aⅴ在线视频| 亚洲大片免费看| 欧美日韩国产经典色站一区二区三区 | 中文字幕一区二区三区在线不卡| 成人国产精品视频| 亚洲丝袜自拍清纯另类| 色哦色哦哦色天天综合| 亚洲成人1区2区| 欧美一级片免费看| 国产精品主播直播| 国产蜜臀97一区二区三区| 波多野洁衣一区| 亚洲人成伊人成综合网小说| 91色九色蝌蚪| 日韩成人av影视| 久久综合色鬼综合色| 国产成人免费高清| 综合分类小说区另类春色亚洲小说欧美| 99久久久久免费精品国产| 亚洲九九爱视频| 在线不卡a资源高清| 精品亚洲porn| 国产精品视频免费看| 欧美专区在线观看一区| 日本美女视频一区二区| 欧美国产国产综合| 在线观看免费视频综合| 久久99国内精品| 日韩一区有码在线| 在线不卡的av| 9色porny自拍视频一区二区| 午夜视频久久久久久| 久久久www免费人成精品| 色先锋aa成人| 国产麻豆午夜三级精品| 亚洲精品网站在线观看| 日韩美一区二区三区| 成人网在线播放| 国内精品久久久久影院色| 自拍偷拍国产精品| 欧美mv日韩mv亚洲| 99久久精品国产毛片| 免费在线看成人av| 亚洲日本乱码在线观看| 日韩精品一区二区三区四区视频 | 欧美在线视频不卡| 国产麻豆精品在线| 亚洲丰满少妇videoshd| 国产欧美日韩视频在线观看| 91精品国产一区二区三区| 99精品久久只有精品| 久久 天天综合| 图片区小说区区亚洲影院| |精品福利一区二区三区| 欧美精品一区二区三区在线播放 | 精品美女一区二区三区| 99视频超级精品| 国产美女精品在线| 理论电影国产精品| 午夜视频一区在线观看| 亚洲猫色日本管| 国产精品久久精品日日| 日本一区二区三区电影| 欧美精品一区二区三| 日韩欧美亚洲国产精品字幕久久久| 在线看国产一区二区| 国产成人超碰人人澡人人澡| 久88久久88久久久| 日韩成人免费看| 日本vs亚洲vs韩国一区三区二区| 一区二区视频在线看| 中文字幕在线观看不卡视频| 久久久久88色偷偷免费 | 欧美日韩视频不卡| 一本到不卡精品视频在线观看| 成人在线视频首页| 国产二区国产一区在线观看| 韩国欧美国产1区| 久久精品国产999大香线蕉| 午夜不卡在线视频| 日韩黄色一级片| 蜜桃视频一区二区| 久久精品国产**网站演员| 六月丁香婷婷色狠狠久久| 毛片av中文字幕一区二区| 久久99久久99精品免视看婷婷 | 亚洲精品高清视频在线观看| 亚洲精选在线视频| 亚洲国产日日夜夜| 五月天精品一区二区三区| 日韩精品1区2区3区| 狠狠v欧美v日韩v亚洲ⅴ| 国产成人在线看| 色综合色综合色综合色综合色综合| 色综合天天狠狠| 91麻豆精品国产91久久久| 欧美成人伊人久久综合网| www国产精品av| 最新日韩在线视频| 亚洲.国产.中文慕字在线| 丝袜美腿亚洲一区二区图片| 国产在线不卡一卡二卡三卡四卡| 国产精品一品视频| 从欧美一区二区三区| 91一区二区三区在线观看| 欧美日韩国产一区| 欧美精品一区二区三区在线 | 成人精品一区二区三区中文字幕| 成人激情免费电影网址| 在线免费观看一区| 日韩一区国产二区欧美三区| 2023国产精品视频| 国产精品美日韩| 亚洲午夜一二三区视频| 激情另类小说区图片区视频区| 粉嫩aⅴ一区二区三区四区| 在线观看国产精品网站| 日韩精品一区二| 亚洲色图清纯唯美| 日韩av一级电影| 成人18视频在线播放| 欧美一区二区精品在线| 欧美激情资源网| 全部av―极品视觉盛宴亚洲| 岛国一区二区在线观看| 91精品综合久久久久久| 国产精品家庭影院| 美日韩一区二区| 91在线视频网址| 精品欧美一区二区久久| 亚洲精品免费在线播放| 精品午夜久久福利影院| 91国产福利在线| 国产无人区一区二区三区| 日韩精品每日更新| 色综合久久88色综合天天免费| 欧美成人性福生活免费看| 一区二区三区中文字幕| 国产91清纯白嫩初高中在线观看| 在线一区二区视频| 国产精品传媒入口麻豆| 激情六月婷婷综合| 91精品国产麻豆国产自产在线| 日韩美女视频19| 激情五月播播久久久精品| 在线观看欧美黄色| 亚洲欧洲三级电影| 国产一区二区剧情av在线| 91麻豆精品国产91久久久| 亚洲激情六月丁香| 丰满放荡岳乱妇91ww| 精品国产百合女同互慰| 免费人成精品欧美精品| 欧美日韩一区精品| 亚洲最色的网站| www.亚洲人| 中文字幕乱码亚洲精品一区| 国产在线观看一区二区| 日韩欧美不卡在线观看视频| 日精品一区二区| 欧美日韩一区精品| 亚洲午夜国产一区99re久久| 色综合久久久久久久| 日韩久久一区二区|