sportthrd.pas

来自「这是一款木马程序」· PAS 代码 · 共 93 行

PAS
93
字号
unit SPortThrd;

interface

uses
  Classes,Sysutils,scktcomp,StdCtrls;
type
  FindPortIP2 = class(TThread)
          UseCSockt:TClientSocket;
          UseState:Boolean;
  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;
    destructor  Destroy;override;
    Procedure   ConnectIP(IPaddr:String;DPort:Integer;SaveList:TStrings);
    Procedure   InsertIP;
  end;
Var
  InIPAddr:String;
  InSvList:TStrings;
  InPort:Integer;
  SaveEchoIP:string;

implementation
Constructor FindPortIP2.Create;
begin
    UseCSockt:=TClientSocket.Create(nil);
    UseCSockt.ClientType:=ctNonBlocking;
    UseCSockt.OnError:=InError;
    UseCSockt.OnConnect:=InConnect;
    UseCSockt.OnDisconnect:=InDisconnect;
    Self.FreeOnTerminate:=False;
    inherited Create(False);
end;
Procedure FindPortIP2.ConnectIP(IPaddr:String;DPort:Integer;SaveList:TStrings);
begin
    UseState:=True;
    InIPAddr:=IPAddr;
    InPort:=DPort;
    InSvList:=SaveList;
    UseCSockt.Address:=InIPAddr;
    UseCsockt.Port:=InPort;
    try
      UseCSockt.Open;
    except
      UseCSockt.Address:='';
    end;
end;
Procedure FindPortIP2.InsertIP;
begin
    if SaveEchoIP<>'' then
    InSvList.Insert(0,SaveEchoIP);
end;
procedure FindPortIP2.InConnect(Sender: TObject;Socket: TCustomWinSocket);
Begin
  SaveEchoIP:=Socket.RemoteAddress+
             '  <'+Socket.RemoteHost+'>: '+IntToStr(socket.RemotePort);
  InsertIP;
  Socket.Close;
  UseCSockt.Close;
  UseCSockt.Address:='';
  UseState:=False;
end;
procedure FindPortIP2.InError(Sender: TObject; Socket: TCustomWinSocket;
      ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
 ErrorCode:=0; socket.Close;
 UseCSockt.Address:='';
 SaveEchoIP:='';
 UseState:=False;
end;
procedure FindPortIP2.InDisconnect(Sender: TObject;Socket: TCustomWinSocket);
Begin
    UseCSockt.Address:='';
    SaveEchoIP:='';
    UseState:=False;
end;
destructor FindPortIP2.Destroy;
begin
   UseCSockt.Free;
end;
procedure FindPortIP2.Execute;
begin
end;
end.
 

⌨️ 快捷键说明

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