永发信息网

vb远程开机代码

答案:1  悬赏:40  手机版
解决时间 2021-02-05 03:16
  • 提问者网友:富士山上尢
  • 2021-02-04 17:58
vb远程开机代码
最佳答案
  • 五星知识达人网友:动情书生
  • 2021-02-04 18:41
'以下内容摘自网络,未进行验证
'此程序主要功能是用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
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯