vb远程开机代码

 我来答
匿名用户
2015-06-08
展开全部
'以下内容摘自网络,未进行验证
'此程序主要功能是用VB实现远程开机;
'一台电脑要想实现网上远程开机,其主板和网卡必须都支持远程唤醒功能,然后还得进入BIOS设置COMS,至于如何设置,不同的主板设置
'方法也可能不一样,请参考有关资料 设置好COMS后就可以用本程序发送远程开机命令了
'如果想要广域网远程开机,那么除了设置COMS外,还得对路由器进行一定的设置
'新建一个工程,在Form1上添加三个Text控件,三个标签控件,一个命令按钮和一个Winsock1控件,然后复制下面的代码到Form1
Dim MagicPacket(0 To 101) As Byte   '魔术包
Dim myMAC(0 To 5) As Byte           '欲唤醒的主机的MAC地址
Private Sub StrToMAC(ByVal myStrMAC As String)      '将MAC地址的字符串形式转化为十六进制数值保存在数组myMAC里     Dim i As Integer
    Dim tempStr As String
    For i = 0 To 5
        tempStr = Mid(myStrMAC, i * 2 + 1, 2)
        myMAC(i) = "&H" & tempStr
        Next i
End Sub
Private Sub Command1_Click()   '发送远程开机命令
    Dim i As Integer
    Winsock1.RemoteHost = Text2.Text
    Winsock1.RemotePort = Text3.Text
    Call StrToMAC(Text1.Text)
    For i = 0 To 5      '以下两个For是创建一个魔术包
        MagicPacket(i) = 255
    Next i
    For i = 6 To 101
        MagicPacket(i) = myMAC((i Mod 6))
    Next i
    Winsock1.SendData MagicPacket   '发送魔术包(不管是在局域网还是在广域网,只要一台电脑检测到对应MAC的魔术包就会自动唤醒)
End Sub
Private Sub Form_Load()
    Label1.Caption = "MAC地址:"
    Label2.Caption = "所在网段的广播地址(IP):"
    Label3.Caption = "广播端口:"
    Command1.Caption = "发送远程开机命令"
    Winsock1.Protocol = sckUDPProtocol   '使用UDP协议
    Text1.Text = "010203ABCDEF"          '欲唤醒的电脑的MAC地址,MAC地址的格式要求这样填(数值之间没有其它字符)
    Text2.Text = "192.168.1.255"         '广播地址(因为远程电脑已关机,没有IP地址,所以只能以广播形式找到要打开的电脑,广域网的话填路由器的IP)
    Text3.Text = "0"                     '端口号,在局域网里的话就为0吧,广域网的话就看你的路由器开放哪个端口了!
End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式