⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wangluohuanxing.txt

📁 自动唤醒网络终端系统
💻 TXT
字号:
VB中编程实现远程唤醒方法:
1、        使用WINSOCK1 的UDP协议来发送数据包;
2、        要使局域网中的电脑开机,就要知道远程计算机的MAC地址;
3、        数据发送格式为Byte型十六进制数据;
4、        要发送的数据为: FF  FF  FF  FF  FF  FF 和十六个6位的MAC;
5、        主板设置:将CMOS设置中的“Power Management Setup”的“Wake Up On LAN”项设置为“Enable”即可;
6、        网卡与主板连接:主板上通常都有一个专门的3芯插座,以便在关机时为网卡供电,支持远程唤醒的网卡上都有一个3针的WOL接口和一条3芯的远程唤醒电缆,通过判断网卡是否带有WOL接口即可
7、        因为条件有限只在INTER865主板上测试通过;

Private Sub InitUDPSOCK()
  With Winsock1
   .Protocol = sckUDPProtocol
   .RemoteHost = "255.255.255.255" ‘或者使用局域网段如”192.168.XXX..255”
   .RemotePort = 7010
   .Bind 7010
  End With
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

'这部分是举例的MAC码00-11-11-1C-D9-50
B(0) = Val("&h" & (Mid(MAC, 1, 2))) '&H0
B(1) = Val("&h" & (Mid(MAC, 4, 2))) '&H11
B(2) = Val("&h" & (Mid(MAC, 7, 2))) '&H11
B(3) = Val("&h" & (Mid(MAC, 10, 2))) '&H1C                           ' 此處修改 mid中的位數 ,可以實現 0011111CD950 格式..
B(4) = Val("&h" & (Mid(MAC, 13, 2))) '&HD9
B(5) = Val("&h" & (Mid(MAC, 16, 2))) '&H50

'这是起始的6字节FF
For i = 0 To 5
DataBuff(i) = &HFF
Next i

'16个6字节的MAC码
'这部分也可以用API的CopyMemory 来写
For p = 1 To 16
For i = 0 To 5
  DataBuff(p * 6 + i) = B(i)
Next i
Next p
’输出显示发送码(调试时使用)
For i = 0 To 101
If Len(Hex(DataBuff(i))) = 1 Then
  StrA$ = StrA$ & "0" & Hex(DataBuff(i)) & "  "
Else
  StrA$ = StrA$ & Hex(DataBuff(i)) & "  "
End If
Next i
DUBEG.PRINT  StrA$ 

Winsock1.SendData DataBuff
End Sub

Private Sub Command1_Click()
Call UDPSenddata("00-11-11-1C-D9-50")’MAC
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -