2022企业服务(新型)提供商TOP150
全世界各行各业联合起来,internet一定要实现!

用Delphi实现远程控制

2004-02-14 eNet&Ciweek

  三、编写被控程序

  ---- 1、新建一个项目Server.dpr,并把一个TServerSocket元件放到Form上,它的属性设置如下:Active设为True;Port设为100,其它属性按默认值。

  ---- 2、ServerSocket1的OnClientRead事件代码如下:   

  procedure TForm1.ServerSocket1ClientRead

  (Sender: TObject;Socket: TCustomWinSocket);

   var

   Str:PChar;

   Code,V:Integer;

   begin

   Str:=PChar(Socket.ReceiveText); //接收字符串

  Val(Str,V,Code); //处理接收的字符串,首先转换字符串为整数

   if Code< >0 then

  Application.MessageBox(Str,'提示信息',

  MB_OK+MB_ICONINFORMATION)

  //如果转换后的数据不是一个整型数就通过消息框来显示字符串

   else

   if (V=0)or(V=1)or(V=2) then

   ExitWindowsEx(V,0)

  //调用Windows的API函数(V=0表示重新登录、

  V=1表示关机、V=2表示重启动)

   else

  Application.MessageBox(Str,'提示信息',

  MB_OK+MB_ICONINFORMATION);

  //转换后数据不为0、1、2时在消息框内显示字符串

   end;  

  ---- 3、修改项目文件,不让窗口显示并且防止它运行两次,修改begin和end之间的代码如下:

   begin

  Application.Initialize;

  if FindWindow('TForm1','Form1')=0 then begin

  //当没有找到Form1时执行下面代码

  Application.ShowMainForm:=False; //不显示主窗口

  Application.CreateForm(TForm1, Form1);

  Application.Run;

   end;

   end.  

  四、注意事项

  ---- 1、网络要装配正确并安装TCP/IP协议,且要正常运行。

  ---- 2、首先要运行被控程序。   

  ---- 3、必须知道对方的IP地址或主机名。   

  ---- 上述程序用Delphi5.0编写,在Windows98对等网、WindowsNT4.0局域网以及Internet上运行通过。最后要声明的是此程序由于能够控制对方的计算机,在实验时要事先经过他人同意,不要给别人造成影响。

相关频道: eNews

您对本文或本站有任何意见,请在下方提交,谢谢!

投稿信箱:tougao@enet16.com