频道栏目
首页 > 资讯 > 编程 > 正文

红黑十周年手机远程控制软件编写系列教程第四课:简单功能的设计二

12-04-23        来源:[db:作者]  
收藏   我要投稿

BBS.2CTO.COM 红黑论坛
WWW.2CTO.COM 红黑主站
手机远程控制电脑软件设计课程

第四课、简单功能的设计(二)
理论知识:
照旧还是先来点理论吧,上节课我们已经实现的手机
和电脑的数据传输的大体框架了这一节课来解释一下
如何实现一些简单的功能——简单功能的设计

我们在VB程序中,如果从手机处收到b就是关机,
收到c就是重启……以此类推,我们还可以做很多事
最近这一两节课就是讲这些小功能的实现了!

本节课的小功能实现:
1 使用监控

2 鼠标锁定

3 信息框弹出

4 锁定计算机

在这一节课,如果有时间的话(多半是有的)
我还会讲一下比较实用,新颖的功能吧—远程开机
关于远程开机的文章:
http://baike.baidu.com/view/69321.htm
http://user.qzone.qq.com/315102821/blog/1325826199#!app=2&pos=1325826199 我写的嘿嘿(用j2me实现)
还有附上VB的源代码:
Private Sub Command1_Click()

    On Error GoTo errorExe
      With Winsock1
       .Protocol = sckUDPProtocol
       .RemoteHost = txtDns.Text
       .RemotePort = txtPort.Text
       .Bind txtPort.Text
      End With
     
    Call UDPSenddata(txtMac.Text)
    MsgBox "唤醒命令发送完毕!", vbInformation, "提示"
    Winsock1.Close
    Exit Sub
errorExe:
    MsgBox "唤醒失败!", 16, "提示"

End Sub

Private Sub Command2_Click()
    End
End Sub

Private Sub UDPSenddata(MAC As String)
    Dim i As Integer
    Dim p As Integer
    Dim B() As Byte
    Dim DataBuff() As Byte
   
    ReDim B(0 To 5) As Byte
    ReDim DataBuff(0 To 101) As Byte '六个FF+十六个重复MAC地址=刚好102个字节
   
    B(0) = Val("&h" & (Mid(MAC, 1, 2)))
    B(1) = Val("&h" & (Mid(MAC, 4, 2)))
    B(2) = Val("&h" & (Mid(MAC, 7, 2)))
    B(3) = Val("&h" & (Mid(MAC, 10, 2)))
    B(4) = Val("&h" & (Mid(MAC, 13, 2)))
    B(5) = Val("&h" & (Mid(MAC, 16, 2))) '去掉横杠,将字符串转化为数值存入数组B()
   
    For i = 0 To 5
     DataBuff(i) = &HFF
    Next i '六个FF作为标志
   
    For p = 1 To 16
     For i = 0 To 5
      DataBuff(p * 6 + i) = B(i)
     Next i
    Next p '在6个FF后面接着16次重复的mac地址
   
    '注:6个FF加上16个重复的MAC地址是WOL技术标准规定的魔术包内容而已,不用考虑为什么这样做

    Winsock1.SendData DataBuff

End Sub


 

相关TAG标签
上一篇:Exchange 2003升级到2010之申请证书并分配服务 doc格式
下一篇:红黑十周年手机远程控制软件编写系列教程第三课:简单功能的设计
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站