⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pingthread.pas

📁 这是一款木马程序
💻 PAS
字号:
unit PingThread;

interface

uses
  Classes,stdctrls,Sysutils,scktcomp,checklst;

type
  PingIP = class(TThread)
     UseCSockt:TClientSocket;
  procedure InConnect(Sender: TObject;Socket: TCustomWinSocket);
  procedure InError(Sender: TObject; Socket: TCustomWinSocket;
      ErrorEvent: TErrorEvent; var ErrorCode: Integer);
  procedure InDisconnect(Sender: TObject;Socket: TCustomWinSocket);
  private
    { Private declarations }
  protected
    procedure Execute; override;
  public
    constructor Create(IPaddr:String;DPort:Integer;
                       SaveIP:TCheckListBox;ShowLabel:TLabel);
    Procedure InsertIP;
  end;

Var
  InIPAddr:String;
  InSaveIP:TCheckListBox;
  InPort:Integer;
  InLabel:TLabel;
implementation
Constructor PingIP.Create(IPaddr:String;DPort:Integer;
                       SaveIP:TCheckListBox;ShowLabel:TLabel);
begin
  InIPAddr:=IPAddr;
  InSaveIP:=SaveIP;
  InPort:=DPort;
  InLabel:=ShowLabel;
    UseCSockt:=TClientSocket.Create(nil);
    UseCSockt.Address:=InIPAddr;
    UseCSockt.ClientType:=ctNonBlocking;
    UseCsockt.Port:=InPort;
    UseCSockt.OnError:=InError;
    UseCSockt.OnConnect:=InConnect;
    UseCSockt.OnDisconnect:=InDisconnect;
    
    Self.FreeOnTerminate:=True;

  inherited Create(False);
end;
Procedure PingIP.InsertIP;
begin
    try
      InLabel.Caption:='线程'+IntToStr(self.ThreadID)+'正在对目标主机:'+UseCSockt.Address+'->扫描端口:'+IntToStr(UseCSockt.Port)
                   +'进行中... ... .'+UseCSockt.Host;
      UseCSockt.Open;
    except
       Self.Terminate;
       self:=nil;
    end;
end;
procedure PingIP.InConnect(Sender: TObject;Socket: TCustomWinSocket);
Begin
  InLabel.Caption:='*****线程'+IntToStr(self.ThreadID)+'已连接目标主机:'+InIPAddr+':'+IntToStr(InPort)+'---探测正在返回... .. .';
  InSaveIP.Items.Insert(0,Socket.RemoteAddress+'='+'可连接'+Socket.RemoteHost);
  Socket.Close;
 // self:=nil;
end;
procedure PingIP.InError(Sender: TObject; Socket: TCustomWinSocket;
      ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
   ErrorCode:=0;
   Socket.Close;
   self:=nil;
end;
procedure PingIP.InDisconnect(Sender: TObject;Socket: TCustomWinSocket);
Begin
  if Socket.RemoteAddress<>'' then
  begin
    InLabel.Caption:='返回线程'+IntToStr(self.ThreadID)+
           '断开连接目标主机:'+InIPAddr+'::'+IntToStr(InPort)+'。';
  end else InLabel.Caption:='返回线程'+IntToStr(self.ThreadID)+
           '搜索目标主机:'+InIPAddr+'::'+IntToStr(InPort)+'---失败已断开。';
  self:=nil;
end;
procedure PingIP.Execute;
begin
  Synchronize(InsertIP);

  self.ReturnValue:=12;
  Self.Terminate;
  self:=nil;
end;

end.
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -