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

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

?? cap_ip.~pas

?? 查詢局域網(wǎng)IP STATUS_FAILED =$FFFF //定義異常出錯代碼 MAX_PACK_LEN =65535 //接收的最大IP報文
?? ~PAS
?? 第 1 頁 / 共 2 頁
字號:
unit cap_ip;

interface

uses
  Windows, Messages,Classes,winsock,sysutils;
const
   WM_CapIp = WM_USER + 200;

   STATUS_FAILED        =$FFFF;		//定義異常出錯代碼
   MAX_PACK_LEN         =65535;		//接收的最大IP報文
   MAX_ADDR_LEN         =16;		//點分十進制地址的最大長度
   MAX_PROTO_TEXT_LEN   =16;		//子協(xié)議名稱(如"TCP")最大長度
   MAX_PROTO_NUM        =12;		//子協(xié)議數(shù)量
   MAX_HOSTNAME_LAN     =255;		//最大主機名長度
   CMD_PARAM_HELP       =true;

   IOC_IN               =$80000000;
   IOC_VENDOR           =$18000000;
   IOC_out              =$40000000;
   SIO_RCVALL           =IOC_IN or IOC_VENDOR or 1;// or IOC_out;
   SIO_RCVALL_MCAST     =IOC_IN or IOC_VENDOR or 2;
   SIO_RCVALL_IGMPMCAST =IOC_IN or IOC_VENDOR or 3;
   SIO_KEEPALIVE_VALS   =IOC_IN or IOC_VENDOR or 4;
   SIO_ABSORB_RTRALERT  =IOC_IN or IOC_VENDOR or 5;
   SIO_UCAST_IF         =IOC_IN or IOC_VENDOR or 6;
   SIO_LIMIT_BROADCASTS =IOC_IN or IOC_VENDOR or 7;
   SIO_INDEX_BIND       =IOC_IN or IOC_VENDOR or 8;
   SIO_INDEX_MCASTIF    =IOC_IN or IOC_VENDOR or 9;
   SIO_INDEX_ADD_MCAST  =IOC_IN or IOC_VENDOR or 10;
   SIO_INDEX_DEL_MCAST  =IOC_IN or IOC_VENDOR or 11;


 type tcp_keepalive=record
    onoff:Longword;
    keepalivetime:Longword;
    keepaliveinterval:Longword;
   end;

// New WSAIoctl Options

//IP頭
 type
    _iphdr=record
	h_lenver        :byte;		//4位首部長度+4位IP版本號
	tos             :char;		//8位服務(wù)類型TOS
	total_len       :char;		//16位總長度(字節(jié))
	ident           :word;		//16位標識
	frag_and_flags  :word;	        //3位標志位
	ttl             :byte;	  	//8位生存時間 TTL
	proto           :byte;	  	//8位協(xié)議 (TCP, UDP 或其他)
	checksum        :word;		//16位IP首部校驗和
	sourceIP	:Longword;	//32位源IP地址
	destIP          :Longword;	//32位目的IP地址
   end;
  IP_HEADER=_iphdr;

 type  _tcphdr=record    		 //定義TCP首部
	TCP_Sport        :word;	  	//16位源端口
	TCP_Dport        :word;	  	//16位目的端口
	th_seq          :longword;	//32位序列號
	th_ack          :longword;	//32位確認號
	th_lenres       :byte;   	//4位首部長度/6位保留字
	th_flag         :char;	 	//6位標志位
	th_win          :word;	 	//16位窗口大小
	th_sum          :word;	      	//16位校驗和
	th_urp          :word;	      	//16位緊急數(shù)據(jù)偏移量
   end;
 TCP_HEADER=_tcphdr;
 type  _udphdr=record		     	//定義UDP首部
      uh_sport          :word;		//16位源端口
      uh_dport          :word;		//16位目的端口
      uh_len            :word;	     	//16位長度
      uh_sum            :word;	     	//16位校驗和
  end;
  UDP_HEADER=_udphdr;
 type _icmphdr=record		     	//定義ICMP首部
	i_type          :byte;	     	//8位類型
	i_code          :byte;	     	//8位代碼
	i_cksum         :word;	     	//16位校驗和
	i_id            :word;	     	//識別號(一般用進程號作為識別號)
//	i_seq           :word;	     	//報文序列號
	timestamp       :word;	     	//時間戳
    end;
   ICMP_HEADER=_icmphdr;

 type _protomap=record			//定義子協(xié)議映射表
	ProtoNum    :integer;
	ProtoText   :array[0..MAX_PROTO_TEXT_LEN] of char;
  end;
  TPROTOMAP=_protomap;

type
  ESocketException   = class(Exception);
  TWSAStartup            = function (wVersionRequired: word;
                                       var WSData: TWSAData): Integer; stdcall;
  TOpenSocket            = function (af, Struct, protocol: Integer): TSocket; stdcall;
  TInet_addr             = function (cp: PChar): u_long; stdcall;
  Thtons                 = function (hostshort: u_short): u_short; stdcall;
  TConnect               = function (s: TSocket; var name: TSockAddr;
                                       namelen: Integer): Integer; stdcall;
  TWSAIoctl              = function (s: TSocket; cmd: DWORD;lpInBuffer: PCHAR;
                                 dwInBufferLen:DWORD;lpOutBuffer: PCHAR; dwOutBufferLen: DWORD;
                                 lpdwOutBytesReturned: LPDWORD;lpOverLapped: POINTER;
                                 lpOverLappedRoutine: POINTER): Integer; stdcall;
  TCloseSocket           = function (s: TSocket): Integer; stdcall;
  Tsend                  = function( s:TSOCKET; buf:pchar;Len:integer;flags:integer):Integer;stdcall;
  Trecv                  = function( s:TSOCKET; var buf;Len:integer;flags:integer):Integer;stdcall;
  TWSAAsyncSelect        =function (s: TSocket; HWindow: HWND; wMsg: u_int; lEvent: Longint): Integer; stdcall;
  TWSACleanup            =function():integer;stdcall;
  TOnCap = procedure(ip,proto,sourceIP,destIP,SourcePort,DestPort: string;
                       header:pchar;header_size:integer;data:pchar;data_size:integer) of object;
  TOnError = procedure(Error : string) of object;

  Tcap_ip = class(TComponent)
  private
    Fhand_dll   :HModule;   // Handle for mpr.dll
    FWindowHandle : HWND;
    FOnCap      :TOnCap;     //捕捉數(shù)據(jù)的事件
    FOnError    :TOnError;     //發(fā)生錯誤的事件
    Fsocket     :array of Tsocket;
    FActiveIP   :array of string;//存放可用的IP

    FWSAStartup            : TWSAStartup;
    FOpenSocket            : TOpenSocket;
    FInet_addr             : TInet_addr;
    Fhtons                 : Thtons;
    FConnect               : TConnect;
    FCloseSocket           : TCloseSocket;
    Fsend                  :Tsend;
    FWSAIoctl              :TWSAIoctl;
    Frecv                  :Trecv;
    FWSACleanup            :TWSACleanup;
    FWSAAsyncSelect        :TWSAAsyncSelect;

  protected
     procedure   WndProc(var MsgRec: TMessage);
     function DecodeIpPack(ip:string;buf:pchar;iBufSize:integer):integer;         //IP解包函數(shù)
//     function DecodeTcpPack(TcpBuf:pchar;iBufSize:integer):integer; 	//TCP解包函數(shù)
     //function DecodeUdpPack(p:pchar;i:integer):integer;		//UDP解包函數(shù)
     //function DecodeIcmpPack(p:pchar;i:integer):integer;        	//ICMP解包函數(shù)
     function  CheckProtocol(iProtocol:integer):string;			//協(xié)議檢查
     procedure cap_ip(socket_no:integer);
     procedure get_ActiveIP;                                            //得當前的IP列表
     procedure set_socket_state;                                        //設(shè)置網(wǎng)卡狀態(tài)
     function  CheckSockError(iErrorCode:integer):boolean;              	//出錯處理函數(shù)
  public
    Fpause                 :boolean;//暫停
    Finitsocket            :boolean;//是否已初始化
    constructor Create(Owner : TComponent); override;
    destructor  Destroy; override;
    function    init_socket:boolean;//初始化
    procedure   StartCap;//開始捕捉
    procedure   pause;   //暫停
    procedure   StopCap;//結(jié)束捕捉
    property    Handle   : HWND       read FWindowHandle;
  published
    property    OnCap    : TOnCap     read  FOnCap write FOnCap;
    property    OnError  : TOnError   read  FOnError write FOnError;
 end;

procedure Register;

implementation
function XSocketWindowProc(ahWnd   : HWND;auMsg   : Integer;awParam : WPARAM; alParam : LPARAM): Integer; stdcall;
var
    Obj    : Tcap_ip;
    MsgRec : TMessage;
begin
    { At window creation ask windows to store a pointer to our object       }
    Obj := Tcap_ip(GetWindowLong(ahWnd, 0));

    { If the pointer is not assigned, just call the default procedure       }
    if not Assigned(Obj) then
        Result := DefWindowProc(ahWnd, auMsg, awParam, alParam)
    else begin
        { Delphi use a TMessage type to pass paramter to his own kind of    }
        { windows procedure. So we are doing the same...                    }
        MsgRec.Msg    := auMsg;
        MsgRec.wParam := awParam;
        MsgRec.lParam := alParam;
        Obj.WndProc(MsgRec);
        Result := MsgRec.Result;
    end;
end;

var
    XSocketWindowClass: TWndClass = (
        style         : 0;
        lpfnWndProc   : @XSocketWindowProc;
        cbClsExtra    : 0;
        cbWndExtra    : SizeOf(Pointer);
        hInstance     : 0;
        hIcon         : 0;
        hCursor       : 0;
        hbrBackground : 0;
        lpszMenuName  : nil;
        lpszClassName : 'TCap_ip');


function XSocketAllocateHWnd(Obj : TObject): HWND;
var
    TempClass       : TWndClass;
    ClassRegistered : Boolean;
begin
    { Check if the window class is already registered                       }
    XSocketWindowClass.hInstance := HInstance;
    ClassRegistered := GetClassInfo(HInstance,
                                    XSocketWindowClass.lpszClassName,
                                    TempClass);
    if not ClassRegistered then begin
       { Not yet registered, do it right now                                }
       Result := Windows.RegisterClass(XSocketWindowClass);
       if Result = 0 then
           Exit;
    end;

    { Now create a new window                                               }
    Result := CreateWindowEx(WS_EX_TOOLWINDOW,
                           XSocketWindowClass.lpszClassName,
                           '',        { Window name   }
                           WS_POPUP,  { Window Style  }
                           0, 0,      { X, Y          }
                           0, 0,      { Width, Height }
                           0,         { hWndParent    }
                           0,         { hMenu         }
                           HInstance, { hInstance     }
                           nil);      { CreateParam   }

    { if successfull, the ask windows to store the object reference         }
    { into the reserved byte (see RegisterClass)                            }
    if (Result <> 0) and Assigned(Obj) then
        SetWindowLong(Result, 0, Integer(Obj));
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
{ Free the window handle                                                    }
procedure XSocketDeallocateHWnd(Wnd: HWND);
begin
    DestroyWindow(Wnd);
end;

//當前機的所有IP地址
procedure Tcap_ip.get_ActiveIP;
type
  TaPInAddr = Array[0..20] of PInAddr;
  PaPInAddr = ^TaPInAddr;
var
  phe: PHostEnt;
  pptr: PaPInAddr;
  Buffer: Array[0..63] of Char;
  I: Integer;
begin
  setlength(FActiveIP,20);

  GetHostName(Buffer, SizeOf(Buffer));
  phe := GetHostByName(buffer);
  if phe = nil then
   begin
    setlength(FActiveIP,0);
    if Assigned(FOnError) then FOnError('沒有找到可綁定的IP!');
    exit;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一区二区在线看| 成人精品电影在线观看| 国产精品888| 欧美最猛黑人xxxxx猛交| 日韩一区二区三区四区| 亚洲视频综合在线| 国精产品一区一区三区mba视频| 一本色道久久综合亚洲91| 2014亚洲片线观看视频免费| 亚洲一区二区精品3399| 大桥未久av一区二区三区中文| 欧美夫妻性生活| 亚洲综合av网| 99久久国产综合色|国产精品| ww亚洲ww在线观看国产| 午夜欧美在线一二页| 91亚洲午夜精品久久久久久| 日韩欧美成人一区| 亚洲成人av资源| 91蜜桃在线免费视频| 欧美激情在线看| 精品一二三四区| 日韩一区二区三区电影| 亚洲国产另类精品专区| 色久综合一二码| 亚洲精品五月天| 99国内精品久久| 亚洲视频在线一区二区| 成人精品免费网站| 中文字幕乱码日本亚洲一区二区 | 26uuu久久天堂性欧美| 婷婷综合久久一区二区三区| 在线观看亚洲精品视频| 成人欧美一区二区三区视频网页| 国产jizzjizz一区二区| 国产午夜一区二区三区| 国产.精品.日韩.另类.中文.在线.播放| 精品久久一区二区三区| 国产乱理伦片在线观看夜一区| 欧美性大战xxxxx久久久| 亚洲品质自拍视频网站| 91黄视频在线| 亚洲一区在线电影| 欧美日韩黄视频| 日韩黄色小视频| 日韩女优毛片在线| 国产自产高清不卡| 久久综合九色综合欧美亚洲| 国产在线精品免费av| 国产偷国产偷精品高清尤物| 成人免费毛片片v| 亚洲欧美色一区| 欧美另类一区二区三区| 久久精品国产网站| 欧美激情综合五月色丁香| 99re成人在线| 日韩电影在线免费| 久久综合精品国产一区二区三区| 国产黄色精品视频| 亚洲免费电影在线| 欧美肥妇free| 国产成人自拍网| 亚洲综合在线第一页| 欧美一区二区三区免费| 国产精品1区2区| 亚洲美女视频在线观看| 91精品在线一区二区| 国产自产v一区二区三区c| 亚洲欧洲美洲综合色网| 7777女厕盗摄久久久| 国产成人h网站| 亚洲国产另类av| 久久精品欧美日韩精品| 色综合天天综合狠狠| 免费日韩伦理电影| 国产精品久久久99| 9191成人精品久久| 国产·精品毛片| 日韩电影免费在线看| 久久久精品日韩欧美| 欧美日韩一二区| 成人爽a毛片一区二区免费| 亚洲成在人线在线播放| 国产日韩影视精品| 欧美精品 日韩| 91麻豆精品在线观看| 精一区二区三区| 亚洲国产欧美另类丝袜| 亚洲国产成人私人影院tom| 在线不卡欧美精品一区二区三区| 丁香婷婷综合五月| 欧美aaaaa成人免费观看视频| 国产精品久久久久久亚洲毛片| 欧美一区二区福利在线| 色网站国产精品| 成人18精品视频| 国产真实乱偷精品视频免| 亚洲小说欧美激情另类| 国产精品色在线观看| 精品国产99国产精品| 在线观看91精品国产麻豆| 色婷婷精品久久二区二区蜜臀av| 国内精品第一页| 蜜桃视频在线观看一区二区| 一区二区三区在线免费视频| 国产精品天干天干在观线| 欧美刺激午夜性久久久久久久| 欧美视频一区二区在线观看| 色欧美片视频在线观看| 菠萝蜜视频在线观看一区| 国产一区二区毛片| 寂寞少妇一区二区三区| 精品夜夜嗨av一区二区三区| 免费不卡在线观看| 日韩av电影免费观看高清完整版 | 国产一二精品视频| 捆绑调教美女网站视频一区| 亚洲成人一二三| 亚洲成人午夜电影| 亚洲一区av在线| 午夜视频久久久久久| 五月天激情小说综合| 三级亚洲高清视频| 日本在线不卡视频一二三区| 日产国产高清一区二区三区| 免费成人小视频| 国产一区高清在线| 国产精品一二三在| 国产91清纯白嫩初高中在线观看 | 九色综合国产一区二区三区| 精品一区二区在线视频| 激情图片小说一区| 国产伦精品一区二区三区免费迷 | 日本一区二区视频在线| 中文字幕亚洲综合久久菠萝蜜| 亚洲婷婷在线视频| 亚洲一区二区在线视频| 亚洲成a人片综合在线| 秋霞午夜鲁丝一区二区老狼| 美女在线视频一区| 国产高清精品久久久久| 99视频一区二区三区| 欧美一a一片一级一片| 欧美一区二区视频在线观看2022| 精品理论电影在线| 国产精品成人一区二区艾草 | jlzzjlzz亚洲女人18| 色又黄又爽网站www久久| 欧美日韩视频在线第一区| 日韩精品一区二区三区中文不卡 | 综合网在线视频| 天天色天天操综合| 国产a精品视频| 欧美日韩一区二区三区四区五区| 欧美刺激脚交jootjob| 中文字幕日本不卡| 天天亚洲美女在线视频| 成人精品国产一区二区4080| 欧美日韩精品一区二区天天拍小说| 欧美一区二区日韩一区二区| 国产精品视频一二| 日本不卡1234视频| 99re在线视频这里只有精品| 欧美精品xxxxbbbb| 中文字幕综合网| 精品亚洲国产成人av制服丝袜 | 极品美女销魂一区二区三区 | 日韩国产欧美三级| aa级大片欧美| 精品美女在线播放| 亚洲成人资源网| 波多野结衣在线一区| 日韩欧美电影一二三| 一区二区免费在线| 国产福利精品导航| 欧美一级专区免费大片| 亚洲欧美日本在线| 国产一区二区视频在线播放| 欧美情侣在线播放| 亚洲欧洲日韩在线| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 国产一区二区三区国产| 制服丝袜亚洲色图| 亚洲一区二区三区视频在线播放| 成人小视频免费观看| 精品久久免费看| 青青草国产精品亚洲专区无| 91高清视频在线| 亚洲欧美一区二区三区久本道91| 国产麻豆精品theporn| 日韩美女视频在线| 免费视频一区二区| 欧美一区二区三区的| 婷婷一区二区三区| 欧美无乱码久久久免费午夜一区| 中文字幕制服丝袜成人av| 成人午夜av电影| 国产精品狼人久久影院观看方式| 激情五月播播久久久精品| 欧美v国产在线一区二区三区|