📄 unit1.pas
字号:
begin
bsSkinMessage1.MessageDlg('请选中你要控制的对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$Userlist');
Break;
end;
end;
end;
procedure TForm1.N1Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to sessions do
begin
if session[i].CUsed then
begin
session[i].CSocket.SendText('$Z$KILL'+bsSkinInputDialog1.InputBox('要结束的程序', '文件名', '.exe'));
end;
end;
end;
procedure TForm1.ServerSocketAccept(Sender: TObject;
Socket: TCustomWinSocket);
var
i,j:integer;
Control:String;
begin
j:=-1;
for i:=0 to sessions do
begin
//在原有的客户端连接数组中有中断的客户端连接
if not session[i].CUsed then
begin
session[i].CHandle := Socket.SocketHandle ;//客户端套接字句柄
session[i].CSocket := Socket; //客户端套接字
// session[i].CName := Socket.RemoteHost ; //客户端计算机名称
session[i].CAddress := Socket.RemoteAddress ;//客户端计算机IP
session[i].RemotePort:=socket.RemotePort; //客户端口
session[i].CUsed := True; //连接数组当前位置已经占用
j:=i;
Break;
end;
j:=i;
end;
if j=sessions then
begin
inc(sessions);
session[j].CHandle := Socket.SocketHandle ;
session[j].CSocket := Socket;
// session[j].CName := Socket.RemoteHost ;
session[j].CAddress := Socket.RemoteAddress ;
session[j].RemotePort:=socket.RemotePort; //客户端口
session[j].CUsed := True;
// RichEdit1.Lines.Add('客户端 '+Socket.RemoteAddress + ' 连接 '+DateTimeToStr(Now));
end;
Listtem:= OnlineUserlist.Items.Add;
Listtem.Caption:= Control;
Listtem.Caption:=IntToStr(session[j].CHandle);
Listtem.SubItems.Add('');
Listtem.SubItems.Add(session[j].CAddress);
Listtem.SubItems.Add(IntToStr(session[j].RemotePort));
Socket.SendText('$Z$GetKILL'+ListBox1.Items.Text);
end;
procedure TForm1.ListBox2DblClick(Sender: TObject);
var
i:integer;
begin
if (OnlineUserlist.ItemIndex=-1) or (ListBox2.ItemIndex=-1) then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象或要结束的程序',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$KILL'+ListBox2.Items.Strings[ListBox2.ItemIndex]);
Break;
end;
end;
ListBox2.Items.Delete(ListBox2.ItemIndex);
end;
procedure TForm1.N7Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$C$restrict');
Break;
end;
end;
end;
procedure TForm1.N8Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$K$restrict');
Break;
end;
end;
end;
procedure TForm1.N9Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$Run'+bsSkinInputDialog1.InputBox('要结束的程序', '文件名', 'c:\1.exe'));
Break;
end;
end;
end;
procedure TForm1.N13Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$DEL'+bsSkinInputDialog1.InputBox('要结束的程序', '文件名', 'G:\'));
Break;
end;
end;
end;
procedure TForm1.N14Click(Sender: TObject);
var
i:integer;
begin
bsSkinTextDialog1.Lines.LoadFromFile(ExtractFilePath(Paramstr(0))+'kill.txt');
bsSkinTextDialog1.Execute;
bsSkinTextDialog1.Lines.SaveToFile(ExtractFilePath(Paramstr(0))+'kill.txt');
ListBox1.Items.Text:=bsSkinTextDialog1.Lines.Text;
for i:=0 to sessions do
begin
if session[i].CUsed then
begin
session[i].CSocket.SendText('$Z$GetKILL'+ListBox1.Items.Text);
end;
end;
end;
procedure TForm1.N15Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$KILL'+bsSkinInputDialog1.InputBox('要结束的程序', '文件名', '.exe'));
Break;
end;
end;
end;
procedure TForm1.N19Click(Sender: TObject);
var
i:integer;
begin
if (OnlineUserlist.ItemIndex=-1) or (ListBox2.ItemIndex=-1) then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象或要结束的程序',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$KILL'+ListBox2.Items.Strings[ListBox2.ItemIndex]);
Break;
end;
end;
ListBox2.Items.Delete(ListBox2.ItemIndex);
end;
procedure TForm1.N20Click(Sender: TObject);
var
i:integer;
begin
if (OnlineUserlist.ItemIndex=-1) or (ListBox2.ItemIndex=-1) then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象或要结束的程序',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CUsed then
begin
session[i].CSocket.SendText('$Z$KILL'+ListBox2.Items.Strings[ListBox2.ItemIndex]);
Break;
end;
end;
ListBox2.Items.Delete(ListBox2.ItemIndex);
end;
procedure TForm1.N21Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$K$xtkz2');
Break;
end;
end;
end;
procedure TForm1.N22Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$K$xtkz1');
Break;
end;
end;
end;
procedure TForm1.N23Click(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要操作对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$K$xtkz0');
Break;
end;
end;
end;
procedure TForm1.OnlineUserlistDblClick(Sender: TObject);
var
i:integer;
begin
if OnlineUserlist.ItemIndex=-1 then
begin
bsSkinMessage1.MessageDlg('请选中你要控制的对象',mtInformation, [mbOk], 0);
exit;
end;
for i:=0 to sessions do
begin
if session[i].CHandle = StrToInt(OnlineUserlist.Items[i].Caption) then
begin
session[i].CSocket.SendText('$Z$Userlist');
Break;
end;
end;
end;
procedure TForm1.N24Click(Sender: TObject);
begin
ListBox2.Clear;
end;
procedure TForm1.N26Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to sessions do
begin
if session[i].CUsed then
begin
session[i].CSocket.SendText('$K$xtkz0');
Break;
end;
end;
end;
procedure TForm1.N27Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to sessions do
begin
if session[i].CUsed then
begin
session[i].CSocket.SendText('$K$xtkz2');
Break;
end;
end;
end;
procedure TForm1.N28Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to sessions do
begin
if session[i].CUsed then
begin
session[i].CSocket.SendText('$K$xtkz1');
Break;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -