📄 unitmanager.pas
字号:
N2.Enabled := True;
end else
begin
N1.Enabled := True;
N2.Enabled := False;
end;
end;
// 刷新进程
procedure TFormManager.N1Click(Sender: TObject);
var
MinBuffer: TMinBufferHeader;
begin
MinBuffer.dwSocketCmd := Client_GetProcessList;
ClientSocket.SendBuf(MinBuffer, MIN_BUFFER_SIZE);
end;
// 干掉进程
procedure TFormManager.N2Click(Sender: TObject);
var
MinExBuffer: TMinExBufferHeader;
CListItem: TListItem;
begin
CListItem := ListView_Process.Selected;
if Assigned(CListItem) then
begin
MinExBuffer.dwSocketCmd := Client_KillProcess;
MinExBuffer.dwBufferSize := HexToInt(CListItem.Caption);
ClientSocket.SendBuf(MinExBuffer, MINEX_BUFFER_SIZE);
Sleep(10);
N1Click(Self);
end;
end;
// 右键激活
procedure TFormManager.PM_FilePopup(Sender: TObject);
var
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
Case CListItem.ImageIndex of
2:
begin
N3.Enabled := False;
N4.Enabled := False;
N5.Enabled := False;
N6.Enabled := False;
N8.Enabled := False;
N9.Enabled := False;
N11.Enabled := True;
N12.Enabled := True;
end;
1:
begin
N3.Enabled := True;
N4.Enabled := True;
N5.Enabled := True;
N6.Enabled := True;
N8.Enabled := True;
N9.Enabled := False;
N11.Enabled := True;
N12.Enabled := True;
end;
0:
begin
N3.Enabled := False;
N4.Enabled := False;
N5.Enabled := False;
N6.Enabled := False;
N8.Enabled := True;
N9.Enabled := True;
N11.Enabled := True;
N12.Enabled := True;
end;
end;
N1.Enabled := True;
end else
begin
N3.Enabled := False;
N4.Enabled := False;
N5.Enabled := False;
N6.Enabled := False;
N8.Enabled := True;
N9.Enabled := False;
N11.Enabled := True;
N12.Enabled := True;
end;
end;
// 获取磁盘列表
procedure TFormManager.N12Click(Sender: TObject);
var
MinBuffer: TMinBufferHeader;
begin
MinBuffer.dwSocketCmd := Get_DiskList;
ClientSocket.SendBuf(MinBuffer, MIN_BUFFER_SIZE);
StrCustomPath := '';
end;
// 进入目录
procedure TFormManager.ListView_FileDblClick(Sender: TObject);
var
StrDir: String;
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
// 判断是否是磁盘
case CListItem.ImageIndex of
2:
begin
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
StrCustomPath := StrDir;
end;
0:
begin
if Length(StrCustomPath) = 0 then Exit;
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
if StrDir = '.' then Exit;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
if StrDir = '..' then
begin
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := ExtractFilePath(StrCustomPath);
StrCustomPath := StrDir;
end else
begin
StrCustomPath := StrCustomPath + '\' + StrDir;
StrDir := StrCustomPath + '\';
end;
end;
end;
StrDir := MakeSocketCmd(Get_DirList) + StrDir;
ClientSocket.SendText(StrDir);
end;
end;
// 刷新当前目录
procedure TFormManager.N11Click(Sender: TObject);
var
StrDir: String;
begin
if Length(StrCustomPath) < 2 then
begin
StrDir := MakeSocketCmd(Get_DiskList);
end else
begin
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\';
StrDir := MakeSocketCmd(Get_DirList) + StrDir;
end;
ClientSocket.SendText(StrDir);
end;
// 远程执行文件
procedure TFormManager.N3Click(Sender: TObject);
var
StrDir: String;
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\' + StrDir;
StrDir := MakeSocketCmd(File_Execute) + StrDir;
ClientSocket.SendText(StrDir);
end;
end;
// 删除文件
procedure TFormManager.N4Click(Sender: TObject);
var
StrDir: String;
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\' + StrDir;
StrDir := MakeSocketCmd(File_Delete) + StrDir;
ClientSocket.SendText(StrDir);
Sleep(10);
N11Click(Self);
end;
end;
// 新建文件夹
procedure TFormManager.N8Click(Sender: TObject);
var
StrDir: String;
begin
if Length(StrCustomPath) < 2 then Exit;
StrDir := InputBox('New Directory', 'Input Directory Name:', '');
if Length(StrDir) = 0 then Exit;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\' + StrDir;
StrDir := MakeSocketCmd(Dir_New) + StrDir;
ClientSocket.SendText(StrDir);
Sleep(10);
N11Click(Self);
end;
// 删除文件夹
procedure TFormManager.N9Click(Sender: TObject);
var
StrDir: String;
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\' + StrDir;
StrDir := MakeSocketCmd(Dir_Delete) + StrDir;
ClientSocket.SendText(StrDir);
Sleep(10);
N11Click(Self);
end;
end;
// 下载文件
procedure TFormManager.N6Click(Sender: TObject);
var
StrDir, StrFile: String;
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
SD_File.FileName := StrDir;
if SD_File.Execute then
begin
StrFile := SD_File.FileName;
if Length(StrFile) < 4 then
begin
MessageBox(Application.Handle, '文件路径无效!,请选择正确的保存位置!', nil, MB_ICONERROR);
Exit;
end;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\' + StrDir;
StrDir := MakeSocketCmd(File_DownLoadBegin) + StrDir;
isDownloadFile := False;
StrFilePath := StrFile;
ClientSocket.SendText(StrDir);
end;
end;
end;
// 上传文件
procedure TFormManager.N5Click(Sender: TObject);
var
StrDir, StrFile: String;
CListItem: TListItem;
begin
CListItem := ListView_File.Selected;
if Assigned(CListItem) then
begin
StrDir := CListItem.Caption;
if Length(StrDir) = 0 then Exit;
if OD_File.Execute then
begin
StrFile := OD_File.FileName;
if Not (FileExists(StrFile)) then
begin
MessageBox(Application.Handle, '文件路径无效!,请选择正确的文件!', nil, MB_ICONERROR);
Exit;
end;
dwFileSize := GetFileSizeEx(Pchar(StrFile));
if dwFileSize = 0 then
begin
MessageBox(Application.Handle, '上传0字节的文件你不感觉无聊吗?就不给你上传!', nil, MB_ICONERROR);
Exit;
end;
if StrCustomPath[Length(StrCustomPath)] = '\' then Delete(StrCustomPath, Length(StrCustomPath), 1);
StrDir := StrCustomPath + '\' + ExtractFileName(StrFile);
StrDir := MakeSocketCmd(File_UploadBegin) + StrDir;
isUpLoadFile := False;
StrFilePath := StrFile;
ClientSocket.SendText(StrDir);
UnitFileCallback.FormCallback.ShowModal;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -