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

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

?? dxdnsservercore.pas

?? Well known and usefull component for delphi 7
?? PAS
?? 第 1 頁 / 共 2 頁
字號(hào):
unit DXDNSServerCore;

interface

///////////////////////////////////////////////////////////////////////////////
//    Component: TDXDNSServerCore
//       Author: G.E. Ozz Nixon Jr. (staff@bpdx.com)
// ========================================================================
// Source Owner: DX, Inc. 1995-2003
//    Copyright: All code is the property of DX, Inc. Licensed for
//               resell by Brain Patchwork DX (tm) and part of the
//               DX (r) product lines, which are (c) 1999-2003
//               DX, Inc. Source may not be distributed without
//               written permission from both Brain Patchwork DX,
//               and DX, Inc.
//      License: (Reminder), None of this code can be added to other
//               developer products without permission. This includes
//               but not limited to DCU's, DCP's, DLL's, OCX's, or
//               any other form of merging our technologies. All of
//               your products released to a public consumer be it
//               shareware, freeware, commercial, etc. must contain a
//               license notification somewhere visible in the
//               application.
//               Example is Internet Explorer - Help->About screen
//               shows the licensed code contained in the application.
// Code Version: (4th Generation Code)
// ========================================================================
//  Description: implements DNS (Domain Name Server) protocol
// ========================================================================
///////////////////////////////////////////////////////////////////////////////

uses
  Classes,
  DXString,
  DXServerCore;

{$I DXSock.def}

Type // structure changed in 3.0 code!
   PDXDNSQueryPacket=^TDXDNSQueryPacket;
   TDXDNSQueryPacket=Record
      ID:Word;     //2
      QR:Boolean;
      OpCode:Byte;
      AA:Boolean;
      TC:Boolean;
      RD:Boolean;
      RA:Boolean;
      Z:Byte;
      RCode:Byte;      //2
      QDCount:Word;//2
      ANCount:Word;//2
      NSCount:Word;//2
      ARCount:Word;//2
      Query:String;
      QueryType:Word;
      QueryClass:Word;
   End;

  DNSTSimpleEvent = procedure(ClientThread: TDXClientThread;QueryPacket:PDXDNSQueryPacket) of object;
  DNSTOtherEvent = procedure(ClientThread: TDXClientThread;QueryPacket:PDXDNSQueryPacket;Var Handled:Boolean) of object;

  TDXDNSServerCore = class(TDXServerCore)
  private
    fOnCommandA: DNSTSimpleEvent;        // 1
    fOnCommandNS: DNSTSimpleEvent;       // 2
    fOnCommandMD: DNSTSimpleEvent;       // 3
    fOnCommandMF: DNSTSimpleEvent;       // 4
    fOnCommandCNAME: DNSTSimpleEvent;    // 5
    fOnCommandSOA: DNSTSimpleEvent;      // 6
    fOnCommandMB: DNSTSimpleEvent;       // 7
    fOnCommandMG: DNSTSimpleEvent;       // 8
    fOnCommandMR: DNSTSimpleEvent;       // 9
    fOnCommandNULL: DNSTSimpleEvent;     //10
    fOnCommandWKS: DNSTSimpleEvent;      //11
    fOnCommandPTR: DNSTSimpleEvent;      //12
    fOnCommandHINFO: DNSTSimpleEvent;    //13
    fOnCommandMINFO: DNSTSimpleEvent;    //14
    fOnCommandMX: DNSTSimpleEvent;       //15
    fOnCommandTXT: DNSTSimpleEvent;      //16
    fOnCommandRP: DNSTSimpleEvent;       //17
    fOnCommandAFSDB: DNSTSimpleEvent;    //18
    fOnCommandX25: DNSTSimpleEvent;      //19
    fOnCommandISDN: DNSTSimpleEvent;     //20
    fOnCommandRT: DNSTSimpleEvent;       //21
    fOnCommandOSINSAP: DNSTSimpleEvent;  //22
    fOnCommandAXFR: DNSTSimpleEvent;     //252
    fOnCommandMAILB: DNSTSimpleEvent;    //253
    fOnCommandMAILA: DNSTSimpleEvent;    //254
    fOnCommandALL: DNSTSimpleEvent;      //255
    fOnCommandOther: DNSTOtherEvent;
  protected
    Procedure SetOnCommandA(Value:DNSTSimpleEvent);
    Procedure SetOnCommandNS(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMD(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMF(Value:DNSTSimpleEvent);
    Procedure SetOnCommandCNAME(Value:DNSTSimpleEvent);
    Procedure SetOnCommandSOA(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMB(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMG(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMR(Value:DNSTSimpleEvent);
    Procedure SetOnCommandNULL(Value:DNSTSimpleEvent);
    Procedure SetOnCommandWKS(Value:DNSTSimpleEvent);
    Procedure SetOnCommandPTR(Value:DNSTSimpleEvent);
    Procedure SetOnCommandHINFO(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMINFO(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMX(Value:DNSTSimpleEvent);
    Procedure SetOnCommandTXT(Value:DNSTSimpleEvent);
    Procedure SetOnCommandRP(Value:DNSTSimpleEvent);
    Procedure SetOnCommandAFSDB(Value:DNSTSimpleEvent);
    Procedure SetOnCommandX25(Value:DNSTSimpleEvent);
    Procedure SetOnCommandISDN(Value:DNSTSimpleEvent);
    Procedure SetOnCommandRT(Value:DNSTSimpleEvent);
    Procedure SetOnCommandOSINSAP(Value:DNSTSimpleEvent);
    Procedure SetOnCommandAXFR(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMAILB(Value:DNSTSimpleEvent);
    Procedure SetOnCommandMAILA(Value:DNSTSimpleEvent);
    Procedure SetOnCommandALL(Value:DNSTSimpleEvent);
  public
    constructor Create(AOwner:TComponent); {$IFNDEF OBJECTS_ONLY} override; {$ENDIF}
    destructor Destroy; override;
    procedure ProcessSession(ClientThread: TDXClientThread);
    Procedure AddSimpleEvent(Command:SmallInt;EventProc:DNSTSimpleEvent);
  published
    property OnCommandA: DNSTSimpleEvent read fOnCommandA
                                         write SetOnCommandA;
    property OnCommandNS: DNSTSimpleEvent read fOnCommandNS
                                          write SetOnCommandNS;
    property OnCommandMD: DNSTSimpleEvent read fOnCommandMD
                                          write SetOnCommandMD;
    property OnCommandMF: DNSTSimpleEvent read fOnCommandMF
                                          write SetOnCommandMF;
    property OnCommandCNAME: DNSTSimpleEvent read fOnCommandCNAME
                                             write SetOnCommandCNAME;
    property OnCommandSOA: DNSTSimpleEvent read fOnCommandSOA
                                           write SetOnCommandSOA;
    property OnCommandMB: DNSTSimpleEvent read fOnCommandMB
                                          write SetOnCommandMB;
    property OnCommandMG: DNSTSimpleEvent read fOnCommandMG
                                          write SetOnCommandMG;
    property OnCommandMR: DNSTSimpleEvent read fOnCommandMR
                                          write SetOnCommandMR;
    property OnCommandNULL: DNSTSimpleEvent read fOnCommandNULL
                                            write SetOnCommandNULL;
    property OnCommandWKS: DNSTSimpleEvent read fOnCommandWKS
                                           write SetOnCommandWKS;
    property OnCommandPTR: DNSTSimpleEvent read fOnCommandPTR
                                           write SetOnCommandPTR;
    property OnCommandHINFO: DNSTSimpleEvent read fOnCommandHINFO
                                             write SetOnCommandHINFO;
    property OnCommandMINFO: DNSTSimpleEvent read fOnCommandMINFO
                                             write SetOnCommandMINFO;
    property OnCommandMX: DNSTSimpleEvent read fOnCommandMX
                                          write SetOnCommandMX;
    property OnCommandTXT: DNSTSimpleEvent read fOnCommandTXT
                                           write SetOnCommandTXT;
    property OnCommandRP: DNSTSimpleEvent read fOnCommandRP
                                          write SetOnCommandRP;
    property OnCommandAFSDB: DNSTSimpleEvent read fOnCommandAFSDB
                                             write SetOnCommandAFSDB;
    property OnCommandX25: DNSTSimpleEvent read fOnCommandX25
                                           write SetOnCommandX25;
    property OnCommandISDN: DNSTSimpleEvent read fOnCommandISDN
                                            write SetOnCommandISDN;
    property OnCommandRT: DNSTSimpleEvent read fOnCommandRT
                                          write SetOnCommandRT;
    property OnCommandOSINSAP: DNSTSimpleEvent read fOnCommandOSINSAP
                                               write SetOnCommandOSINSAP;
    property OnCommandAXFR: DNSTSimpleEvent read fOnCommandAXFR
                                            write SetOnCommandAXFR;
    property OnCommandMAILB: DNSTSimpleEvent read fOnCommandMAILB
                                             write SetOnCommandMAILB;
    property OnCommandMAILA: DNSTSimpleEvent read fOnCommandMAILA
                                             write SetOnCommandMAILA;
    property OnCommandALL: DNSTSimpleEvent read fOnCommandALL
                                           write SetOnCommandALL;
    property OnCommandOther: DNSTOtherEvent read fOnCommandOther
                                            write fOnCommandOther;
  end;

implementation

Uses
   DXSock;
   
Type
  PDNSSimpleEvent=^TDNSSimpleEvent;
  TDNSSimpleEvent=record
     Tag:Integer;
     Command:SmallInt;
     EventProcedure:DNSTSimpleEvent;
  End;


(******************************************************************************
CREATE:
       Define the Default Port number to Listen On.
******************************************************************************)
constructor TDXDNSServerCore.Create(AOwner:TComponent);
begin
   inherited Create(AOwner);
   ServerPort:=53;
   ProtocolToBind:=wpUDPOnly;
end;

(******************************************************************************
DESTROY:
        Destory this object.
******************************************************************************)
destructor TDXDNSServerCore.Destroy;
Var
   PSimpleEvent:PDNSSimpleEvent;

begin
   If Assigned(fEventArray) then Begin
      While fEventArray.Count>0 do Begin
         Case PDNSSimpleEvent(fEventArray[0]).Tag of
            1:Begin
              PSimpleEvent:=fEventArray[0];
              Dispose(PSimpleEvent);
            End;
         End;
         fEventArray.Delete(0);
      End;
   End;
   inherited Destroy;
end;

Procedure TDXDNSServerCore.AddSimpleEvent(Command:SmallInt;EventProc:DNSTSimpleEvent);
Var
   PSimpleEvent:PDNSSimpleEvent;
   Loop:Integer;

Begin
   Loop:=0;
   While Loop<fEventArray.Count do Begin
      If PDNSSimpleEvent(fEventArray[Loop]).Command=Command then Begin
         PDNSSimpleEvent(fEventArray[Loop]).EventProcedure:=EventProc;
         Exit;
      End
      Else Inc(Loop);
   End;
   New(PSimpleEvent);
   PSimpleEvent.Tag:=1;      // Denotes Event in fEventArray is a TSimpleEvent!
   PSimpleEvent.Command:=Command;
   PSimpleEvent.EventProcedure:=EventProc;
   fEventArray.Add(PSimpleEvent);
End;

Procedure TDXDNSServerCore.SetOnCommandA(value:DNSTSimpleEvent);
Begin
   fOnCommandA:=Value;
   AddSimpleEvent(1,Value);
End;

Procedure TDXDNSServerCore.SetOnCommandNS(Value:DNSTSimpleEvent);
Begin

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久精品免费网站| 东方欧美亚洲色图在线| 欧美日韩国产小视频在线观看| 亚洲精品日韩综合观看成人91| 91色婷婷久久久久合中文| 亚洲女人的天堂| 欧美理论在线播放| 狠狠色综合播放一区二区| 久久久久久免费网| 91视频在线观看免费| 午夜久久久影院| 日韩精品资源二区在线| 亚洲一二三四区不卡| 欧美人牲a欧美精品| 精品在线免费观看| 国产精品免费看片| 在线观看视频一区| 久久er99热精品一区二区| 国产精品理论在线观看| 欧美电影一区二区三区| 国产精品伊人色| 一区二区久久久久久| 精品国产91乱码一区二区三区 | 国产精品素人视频| 欧美人动与zoxxxx乱| 久久99久久99小草精品免视看| 欧美国产97人人爽人人喊| 欧美在线一区二区| 国产一区二区电影| 午夜激情一区二区三区| 久久精品亚洲国产奇米99| 91高清视频免费看| 狠狠久久亚洲欧美| 亚洲电影一级黄| 国产清纯白嫩初高生在线观看91 | 国产经典欧美精品| 亚洲狠狠爱一区二区三区| 久久久久国产精品厨房| 欧美高清视频在线高清观看mv色露露十八| 韩国成人精品a∨在线观看| 亚洲五码中文字幕| 国产精品天天看| 欧美日韩精品系列| 91年精品国产| 成人精品免费网站| 久久99久国产精品黄毛片色诱| 一区二区三区在线观看国产| 久久综合久久99| 67194成人在线观看| 91啪亚洲精品| 成人激情小说乱人伦| 久久精品国产成人一区二区三区 | 99久久精品免费看国产免费软件| 日本午夜一区二区| 亚洲国产视频一区二区| 亚洲欧美偷拍三级| 国产精品免费网站在线观看| 日韩精品一区二区三区swag| 欧美日韩国产综合久久| 在线精品视频一区二区| 色综合天天综合色综合av| 国产成a人亚洲精品| 国产乱码精品一区二区三区五月婷| 亚洲综合在线免费观看| 亚洲欧洲精品一区二区三区不卡 | 亚洲免费伊人电影| 中文字幕一区三区| 久久99久久久欧美国产| 午夜影视日本亚洲欧洲精品| 一区二区在线免费| 亚洲人成影院在线观看| 亚洲婷婷综合色高清在线| 国产精品福利av| 亚洲猫色日本管| 一区二区欧美视频| 亚洲福利一区二区| 视频一区二区不卡| 免费成人性网站| 久久精品国产网站| 国产乱码精品一区二区三区忘忧草| 国产一区二区三区蝌蚪| 丁香桃色午夜亚洲一区二区三区| 国产成人午夜片在线观看高清观看| 国产一区二区视频在线| 国产精品亚洲成人| 成人国产在线观看| 一本色道久久综合亚洲精品按摩 | 欧美男男青年gay1069videost| 91国产福利在线| 欧美日韩国产小视频在线观看| 在线不卡免费欧美| 欧美tickling挠脚心丨vk| 久久综合色之久久综合| 中文字幕av一区二区三区高| 中文字幕一区二区三区色视频| 中文字幕亚洲在| 亚洲国产人成综合网站| 久久精品国产久精国产爱| 国产91精品入口| 一本久久精品一区二区| 欧美美女一区二区在线观看| 精品少妇一区二区三区视频免付费 | 麻豆精品视频在线| 韩国精品一区二区| 91色婷婷久久久久合中文| 欧美日本在线看| 久久亚洲欧美国产精品乐播| 亚洲免费在线视频| 麻豆国产欧美日韩综合精品二区| 国产成人精品一区二区三区四区| www久久精品| 欧美激情艳妇裸体舞| 午夜欧美在线一二页| 国产成人精品免费看| 精品视频资源站| 久久亚洲一级片| 亚洲一区二区不卡免费| 国产自产视频一区二区三区| 色av综合在线| 国产无人区一区二区三区| 亚洲成人在线网站| 成人精品视频一区二区三区 | 中文字幕免费不卡| 亚洲成av人片www| 成人在线视频一区| 欧美成人vr18sexvr| 亚洲精品乱码久久久久久久久| 蜜桃久久精品一区二区| 91福利在线观看| 欧美激情一区三区| 蜜桃av一区二区| 在线观看亚洲一区| 中文字幕一区二区三区视频| 国产一区在线精品| 欧美一区二区在线视频| 亚洲激情成人在线| 国产传媒久久文化传媒| 在线播放中文字幕一区| 亚洲精品老司机| 成人午夜激情视频| 久久综合色之久久综合| 美国十次综合导航| 欧美日韩一区三区| 亚洲自拍偷拍麻豆| 色www精品视频在线观看| 亚洲国产成人午夜在线一区| 久久99久久99| 日韩一区二区免费在线电影| 亚洲线精品一区二区三区八戒| 成人黄页在线观看| 欧美国产日产图区| 国产精品66部| 精品电影一区二区三区| 日韩电影一二三区| 91精品国产高清一区二区三区蜜臀 | 风间由美一区二区三区在线观看| 日韩精品中文字幕在线不卡尤物| 日韩高清国产一区在线| 欧美午夜一区二区三区 | 久久精品国产99| 欧美一级欧美三级| 无码av免费一区二区三区试看| 在线观看视频一区| 亚洲午夜久久久久久久久久久| 欧美性色黄大片| 一区二区三区国产| 日本一区二区三区四区| 成人av免费在线观看| 《视频一区视频二区| 91网站视频在线观看| 亚洲激情自拍视频| 欧美亚洲国产怡红院影院| 五月婷婷色综合| 精品久久久久久久一区二区蜜臀| 奇米影视在线99精品| 精品日韩一区二区三区免费视频| 激情小说欧美图片| 欧美极品少妇xxxxⅹ高跟鞋| 成人av影院在线| 亚洲一区二区在线免费观看视频| 欧美日产国产精品| 国产伦精品一区二区三区在线观看 | 制服丝袜亚洲网站| 久久精品国产99久久6| 久久久久国产精品人| 91在线码无精品| 亚洲一二三四久久| 日韩一级高清毛片| 国产成人8x视频一区二区| 亚洲少妇最新在线视频| 欧美精品18+| 国产大陆精品国产| 夜夜夜精品看看| 日韩一级高清毛片| www.欧美色图| 欧美a级理论片| 中文字幕第一区综合| 欧美三级电影网站| 国产又粗又猛又爽又黄91精品| 亚洲欧美在线观看|