国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

用Delphi完成專線狀態的探測

用Delphi完成專線狀態的探測

更新時間:2020-01-14 文章作者:未知 信息來源:網絡 閱讀次數:

范智鑫 王毅燕

隨著計算機用戶的增多,計算機網絡越來越復雜,如何進行實時的網絡檢測成為網管人員關心的問題。實時監測可以在最早的時間內發現問題,避免網絡長時間繼線。本文介紹一種利用Delphi編寫應用程序實現專線狀態探測的方法。
實現原理
許多人經常利用Windows中的兩條DOS命令(Ping和Tracert)來測試網絡狀態,其原理是通過向探測的節點端口發送數據包請求,然后從該端口是否應答來判斷網絡是否暢通。其實,在Windows的System目錄下有一個Icmp.dll文件,該動態鏈接庫提供了ICMP協議的所有功能,通過對該動態鏈接庫的調用可以完成發送請求和接收應答。因此,可以利用該動態鏈接庫實現專線狀態的探測。
Icmp.dll文件內的主要調用函數如下:
● IcmpCreateFile: 打開一個句柄,通過該句柄發送ICMP的請求報文;
● IcmpCloseHandle: 關閉通過IcmpCreateFile函數打開的句柄;
● IcmpSendEcho:通過打開的句柄發送ICMP請求,在超時或接收到應答報文后返回。
編程實現
首先構造節點庫(如圖1所示),然后通過調用ICMP協議,向測試端口發送請求,如果接收到該端口的應答,則狀態為“正常”,否則,狀態為“中斷”。

圖1
1. 初始化WinSock,調入Icmp.dll庫
var
 wsadata: TWSAData;
begin
 if WSAStartup($101,wsadata) <> 0 then begin
ShowMessage(‘Error initialising WinSock’);
  halt;
 end;
 hICMPlib ∶= loadlibrary(icmpDLL);
 if hICMPlib <> null then begin
  @ICMPCreateFile ∶= GetProcAddress(hICMPlib, ‘IcmpCreateFile’);
  @IcmpCloseHandle∶= GetProcAddress(hICMPlib, ‘IcmpCloseHandle’);
@IcmpSendEcho∶= GetProcAddress(hICMPlib,
‘IcmpSendEcho’);
if (@ICMPCreateFile = Nil) or (@IcmpCloseHandle = Nil) or (@IcmpSendEcho=Nil) then begin
ShowMessage(‘Error loading dll functions’);
halt;
  end;
  hICMP ∶= IcmpCreateFile;
  if hICMP=INVALID_HANDLE_VALUE then begin
ShowMessage(‘Unable to get ping handle’);
  halt;
  end;
 end;
 else begin
ShowMessage(‘Unable to register’+ icmpDLL);
halt;
 end;
end;
2. 使用定時器啟動探測
在測試中,如果端口狀態正常,則net_stat=0;狀態異常則net_stat=1,并顯示“中斷”,系統響鈴報警。對節點表中所有節點進行測試的主要代碼如下:
//取得欲測試端口的IP地址
net_ip∶=Table1. FieldByName(‘對端IP’). asstring;
//調用端口測試
Test(Sender);
if net_stat=0 then
 begin
  Table1. FieldByName(‘狀態’). asstring∶=‘中斷’;
//端口異常,則net=1
if net=0 then net∶=1;
 end
else Table1. FieldByName(‘狀態’). asstring∶=‘正常’;
//整表測試后,如有異常的端口,則10次響鈴報警
if net=1 then FOR I∶=1 TO 10 DO PlaySound(‘RINGIN’, 0, SND_RESOURCE);
3. 探測指定的端口:Test(Sender)
const
Size = 56;
TimeOut = 3000;
var
Address: DWord;
HostName, HostIP: String;
Phe: PHostEnt;
BufferSize, nPkts: Integer;
pReqData, pData: Pointer;
pIPE: PIcmpEchoReply;
IPOpt: TIPOptionInformation;
begin
//將存儲字符串的地址轉化為標準的網絡IP地址
Address ∶= inet_addr(PChar(net_ip));
//取得測試端口的句柄
Phe ∶= GetHostByAddr(@Address, 4, PF_INET);
// 設定一個緩沖區,填充指定數據作為待發送的數據包
BufferSize ∶= SizeOf(TICMPEchoReply) + Size;
GetMem(pReqData, Size);
GetMem(pData, Size);
GetMem(pIPE, BufferSize);
FillChar(pReqData^, Size, $AA);
pIPE^.Data ∶= pData;
FillChar(IPOpt, SizeOf(IPOpt), 0);
IPOpt.TTL ∶= 64;
 //通過打開的句柄,發送ICMP數據包請求,在超時或接收應答報文后返回
NPkts ∶= IcmpSendEcho(hICMP, Address, pReqData, Size, @IPOpt, pIPE, BufferSize, TimeOut);
//根據是否從測試端口返回應答報文,判斷網絡狀態
 if NPkts = 0 then net_stat∶=0
else begin
HostIP ∶= StrPas(inet_ntoa(TInAddr(pIPE^.Address)));
if trim(HostIP)=trim(net_ip) then net_stat∶=1
else net_stat∶=0;
end;
//釋放變量
FreeMem(pIPE);
FreeMem(pData);
FreeMem
(pReqData);
end;
4. 關閉探測程序
//釋放ICMP
IcmpCloseHandle(hICMP);
FreeLibrary(hICMPlib);
//釋放WinSock
if WSACleanup <> 0 then ShowMessage(‘Error freeing WinSock’);
完善程序
上述程序僅提供了基本的網絡探測方法,為了更好地體現網絡狀態和處理情況,可以對此程序進一步完善:
1. 再建兩個表:
● 故障記錄和處理表: 在探測中將故障節點記錄保存,并記錄故障處理情況;
● 探測間隔表:靈活設置探測時間間隔。
2. 添加節點庫維護模塊。
3. 對于探測模塊的顯示進行改造,使故障節點呈現報警色(如紅色)。 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        亚洲人吸女人奶水| 国产精品三级av| 欧美国产日韩在线观看| 国产麻豆精品在线| 国产欧美视频一区二区| 成人性视频免费网站| 最新国产精品久久精品| 色婷婷激情一区二区三区| 亚洲国产欧美在线人成| 日韩一区二区免费高清| 国产精品18久久久久久久久久久久 | 精品美女在线播放| 成人中文字幕电影| 亚洲成人手机在线| 国产日韩成人精品| 欧美丝袜丝交足nylons| 极品少妇xxxx精品少妇| 亚洲欧美在线aaa| 日韩精品一区二区三区视频| 成人av资源站| 免费观看成人av| 亚洲精品国产一区二区三区四区在线| 91麻豆精品91久久久久久清纯| 国产一区二区三区美女| 亚洲在线观看免费视频| 国产三级久久久| 宅男在线国产精品| 91色九色蝌蚪| 国产精一品亚洲二区在线视频| 夜夜爽夜夜爽精品视频| 国产日韩欧美高清| 欧美一区二区日韩一区二区| 成人av在线电影| 国产乱码精品1区2区3区| 午夜精品久久久久久| 日韩美女精品在线| 精品国产sm最大网站| 欧美日韩dvd在线观看| 91一区二区在线观看| 国产麻豆精品在线| 美女在线一区二区| 亚洲成人动漫在线免费观看| 国产精品久久午夜| 2023国产精品自拍| 日韩欧美成人激情| 欧美肥妇free| 欧美久久久久久蜜桃| 欧美在线一二三四区| 一本一道综合狠狠老| 99在线视频精品| 91在线一区二区| 99精品欧美一区二区三区小说| 国产经典欧美精品| 精品一区二区三区在线观看国产 | 成人av在线影院| 国产精品一区二区久久精品爱涩 | 亚洲激情五月婷婷| 亚洲婷婷综合色高清在线| 欧美国产精品中文字幕| 日本一区二区三区电影| 欧美国产视频在线| 国产精品进线69影院| 亚洲天堂福利av| 一区二区三区不卡视频| 亚洲国产成人av网| 日韩 欧美一区二区三区| 麻豆精品视频在线观看视频| 久久91精品国产91久久小草| 国产一区二区精品在线观看| 国产精品一区三区| 91在线精品一区二区| 欧美视频一区二区| 欧美一区二区在线免费观看| 日韩手机在线导航| 久久久久国产一区二区三区四区| 国产肉丝袜一区二区| 亚洲六月丁香色婷婷综合久久| 亚洲国产精品影院| 另类小说欧美激情| 成人免费高清在线观看| 欧美日韩成人综合| 欧美激情一区二区三区全黄 | 久久久www成人免费毛片麻豆| 久久久精品免费网站| 日韩美女视频19| 全国精品久久少妇| 成人网页在线观看| 欧美人牲a欧美精品| 久久精品人人爽人人爽| 亚洲午夜久久久久久久久电影网| 美女网站一区二区| 色一区在线观看| 精品va天堂亚洲国产| 亚洲精品视频免费看| 美腿丝袜亚洲一区| 色哟哟国产精品免费观看| 精品国产一区二区三区av性色 | 国产偷v国产偷v亚洲高清| 亚洲精品美腿丝袜| 国产一区二区日韩精品| 777久久久精品| 亚洲色图视频网站| 国产成人精品免费看| 欧美一区二区福利在线| 亚洲自拍偷拍麻豆| 本田岬高潮一区二区三区| 日韩丝袜情趣美女图片| 洋洋av久久久久久久一区| 国产成人综合在线| 日韩一区二区三区在线视频| 亚洲日本va午夜在线影院| 国产精品亚洲人在线观看| 欧美一区二区在线观看| 一区二区三区高清不卡| 99精品欧美一区| 欧美国产亚洲另类动漫| 久久97超碰国产精品超碰| 91精品国产综合久久久久| 一区二区三区精品| 99国产精品一区| 国产精品美日韩| 成人黄页在线观看| 国产精品剧情在线亚洲| 国内久久精品视频| 精品国精品国产尤物美女| 午夜视频在线观看一区二区三区| 色婷婷综合久久久| 一区二区三区在线观看动漫| 91香蕉国产在线观看软件| 1000部国产精品成人观看| 91在线精品一区二区| 亚洲毛片av在线| 欧美日韩亚洲综合一区二区三区| 亚洲一区二区欧美日韩| 精品视频1区2区| 日韩高清在线不卡| 日韩一级二级三级精品视频| 美国欧美日韩国产在线播放| 欧美成人伊人久久综合网| 精品一区二区三区视频在线观看 | 精品系列免费在线观看| 久久夜色精品国产欧美乱极品| 久色婷婷小香蕉久久| 久久免费看少妇高潮| 成人精品免费网站| 一区二区三区影院| 欧美日韩国产高清一区二区| 日韩黄色小视频| 久久久久国产精品厨房| 97精品视频在线观看自产线路二| 亚洲精品欧美二区三区中文字幕| 一本大道久久精品懂色aⅴ| 亚洲国产cao| 久久视频一区二区| 成人h动漫精品| 午夜电影网一区| 久久精品夜色噜噜亚洲a∨| 99久久国产综合色|国产精品| 亚洲精品视频在线| 日本电影欧美片| 美女网站色91| 椎名由奈av一区二区三区| 欧美猛男超大videosgay| 国产在线乱码一区二区三区| 自拍偷拍国产亚洲| 欧美va在线播放| 色国产综合视频| 国产综合久久久久影院| 亚洲一区二区在线播放相泽| 精品av综合导航| 欧美体内she精高潮| 国产精品一二一区| 天天操天天色综合| 亚洲欧洲在线观看av| 精品免费国产二区三区| 欧美性猛交一区二区三区精品 | 日韩高清国产一区在线| 国产精品免费av| 精品久久久久99| 欧美日韩久久一区| 99久久er热在这里只有精品66| 免费观看日韩电影| 亚洲午夜一区二区| 中文字幕在线观看一区二区| 欧美大胆人体bbbb| 欧美日韩一区精品| 色综合久久久久综合体| 国产成人亚洲综合a∨婷婷| 午夜一区二区三区视频| 亚洲欧洲三级电影| 国产精品丝袜一区| 国产欧美视频在线观看| 久久亚洲精品小早川怜子| 欧美高清视频不卡网| 在线视频国内自拍亚洲视频| 97se狠狠狠综合亚洲狠狠| 成人精品一区二区三区四区| 国产激情偷乱视频一区二区三区| 老司机午夜精品99久久| 久久精品av麻豆的观看方式|