永发信息网

E语言怎样制作一个小软件使远程机器运行某个程序。。有用加100分啦。。求高手。。

答案:1  悬赏:80  手机版
解决时间 2021-03-20 00:56
RT 要详细信息的+QQ651096635 最好是源码。 3Q
最佳答案
首先使用VB建立两个程序,一个为客户端程序Client,一个为服务器端程序systry。

  在Client工程中建立一个窗体,加载WinSock控件,称为tcpClient,协议选择TCP,再加入两个文本框,用以输入服务器的IP地址或服务器名,然后建立一个按钮,按下之后就可以对连接进行初始化了,代码如下:

Private Sub cmdConnect_Click()
  If Len(Text1.Text) = 0 And Len(Text2.Text) = 0 Then
   MsgBox ("请输入主机名或主机IP地址。")
   Exit Sub
  Else
   If Len(Text1.Text) > 0 Then
    tcpClient.RemoteHost = Text1.Text
   Else
    tcpClient.RemoteHost = Text2.Text
   End If
  End If
  tcpClient.Connect
  Timer1.Enabled = True
End Sub

  连接建立之后就可以使用DataArrival事件处理所收到的数据了。

  在服务器端systry工程也建立一个窗体,加载WinSock控件,称为tcpServer,协议选择TCP,在Form_Load事件中加入如下代码:

Private Sub Form_Load()
  tcpServer.LocalPort = 1999
  tcpServer.Listen
End Sub

  准备应答客户端程序的请求连接,使用ConnectionRequest事件来应答户端程序的请求,代码如下:

Private Sub tcpServer_ConnectionRequest(ByVal requestID As Long)
  If tcpServer.State <> sckClosed Then
   tcpServer.Close'检查控件的 State 属性是否为关闭的。
  End If  '如果不是,在接受新的连接之前先关闭此连接。
  tcpServer.Accept requestID
End Sub

  这样在客户端程序按下了连接按钮后,服务器端程序的ConnectionRequest事件被触发,执行了以上的代码。如果不出意外,连接就被建立起来了。

  建立连接后服务器端的程序通过DataArrival事件接收客户机端程序所发的指令运行既定的程序。如:把服务器端的驱动器名、目录名、文件名等传到客户机端,客户机端接收后用TreeView控件以树状的形式显示出来,浏览服务器端文件目录;强制关闭或重启服务器端的计算机;屏蔽任务栏窗口;屏蔽开始菜单;按照客户机端传过来的文件名或目录名,而删除它;屏蔽热启动键;运行服务器端的任何程序;还包括获取目标计算机屏幕图象、窗口及进程列表;激活、终止远端进程;打开、关闭、移动远端窗口;控制目标计算机鼠标的移动与动作;交换远端鼠标的左右键;在目标计算机模拟键盘输入,下载、上装文件;提取、创建、修改目标计算机系统注册表关键字;在远端屏幕上显示消息。DataArrival事件程序如下:

Private Sub tcpServer_DataArrival(ByVal bytesTotal As Long)

  Dim strData As String
  Dim i As Long
  Dim mKey As String

  tcpServer.GetData strData
  '接收数据并存入strData
  For i = 1 To Len(strData)
   '分离strData中的命令
   If Mid(strData, i, 1) = "@" Then
    mKey = Left(strData, i - 1)
    '把命令ID号存入mKey

    '把命令参数存入strData
    strData = Right(strData, Len(strData) - i)
    Exit For
   End If
  Next i
  Select Case Val(mKey)
   Case 1
   '驱动器名、目录名、文件名
   Case 2
   ' 强制关闭服务器端的计算机
   Case 3
    '强制重启服务器端的计算机
   Case 4
   ' 屏蔽任务栏窗口;
   Case 5
    '屏蔽开始菜单;
   Case 6
   ' 按照客户机端传过来的文件名或目录名,而删除它;
   Case 7
   ' 屏蔽热启动键;
   Case 8
   ' 运行服务器端的任何程序
  End Select
End Sub

  客户机端用tcpClient.SendData发命令。命令包括命令ID和命令参数,它们用符号“@”隔开。

  另外,当客户机端断开与服务器端的来接后,服务器端应用tcpServer_Close事件,来继续准备接收客户机端的请求,其代码如下:

Private Sub tcpServer_Close()
tcpServer.Close
tcpServer.Listen
End Sub

  这就是一个最基本的特洛伊木马程序,只要你的机器运行了服务器端程序,那别人就可以在千里之外控制你的计算机。至于如何让服务器端程序运行就要发挥你的聪明才智了,在我的源程序中有一中方法,是修改系统注册表的方法。

  成功的特洛伊木马程序要比这个复杂一些,还有程序的隐藏、自动复制、传播等问题要解决。警告:千万不要用BO程序破坏别人的系统。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
龙马新天地南门这个地址在什么地方,我要处理
最近玩爹4老是遇到ce348780是怎么回事
巴音郭楞库尔勒煜程短租公寓萨伊巴格店在什么
国家绿化率标准是多少
全身黑色,脖颈带红的是什么蛇
最近是不是有个叫《开心相对论》的节目要播啊
超纤皮和牛皮哪种好
拿大屏高分辨率4k电视看720p的视频会比拿小屏
跪求各种电吉他新手练习曲SOLO练习布鲁斯乐句
广东普宁是那个区
Gina doesn’t look like her sister﹙改为同
Cl2气通入紫色石蕊的现象为先红后无色,其实
会使企业月末资产总额发生变化的是
享受午餐的句子
对相亲对象没感觉,要勉强吗?
推荐资讯
华光灯饰我想知道这个在什么地方
全国14到25度气温的地方
怎么在微信上找女朋友,具体怎么操作。
狮子座男生和射手座女生在一起合适吗?
评价拿破仑和威灵顿谁更出色
QQ群抢红包,老是抢最少,是什么原因
可选择参加本市5月份举行的高职高专统一招生
如图是a、b两种固体物质的溶解度曲线图,(1
孩子学画画沈阳哪家教的好些?
地铁机车如何掉头?
新彩印业在什么地方啊,我要过去处理事情
FTP搜索的实现问题,最早时候,我用一台机器登
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?