[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 远程开机VB代码,能改为vbs代码吗

远程开机VB代码,能改为vbs代码吗
  1. Dim strIP As String = "192.168.1.1" 'IPアドレス
  2. Dim strMAC As String = "00-00-00-00-00-00" 'マックアドレス
  3. '送信データを作成
  4. Dim intCounter As Integer = 0
  5. Dim sendBytes(0 To 101) As Byte
  6. '最初に&hFFを6個付ける
  7. For I = 1 To 6
  8.     sendBytes(intCounter) = &HFF
  9.     intCounter += 1
  10. Next
  11. 'MACアドレスを16回繰り返す
  12. For I = 1 To 16
  13.     'MACアドレス読込み
  14.     For J = 0 To 5
  15.         '16進数を変換して読込み
  16.         sendBytes(intCounter) = Byte.Parse(strMAC.Substring(J * 3, 2), Globalization.NumberStyles.HexNumber)
  17.         intCounter += 1
  18.     Next
  19. Next
  20. 'データを送信するポート番号
  21. Dim RemotePort As Integer = 2304 '何でも良い
  22. '送信先IP指定(ブロードキャストとピンポイントの両方に送信してみる)
  23. Dim BCIP As System.Net.IPAddress
  24. Dim EP As System.Net.IPEndPoint
  25. Dim UDP As New System.Net.Sockets.UdpClient'UDP接続
  26. 'ブロードキャストアドレス指定で送信するとき
  27. BCIP = System.Net.IPAddress.Parse("255.255.255.255")
  28. EP = New System.Net.IPEndPoint(BCIP, RemotePort)
  29. '送信先を指定してデータを送信する
  30. UDP.Send(sendBytes, sendBytes.Length, EP)
  31. 'ピンポイントのIPアドレス指定して送信するとき
  32. BCIP = System.Net.IPAddress.Parse(strIP)
  33. EP = New System.Net.IPEndPoint(BCIP, RemotePort)
  34. '送信先を指定してデータを送信する
  35. UDP.Send(sendBytes, sendBytes.Length, EP)
  36. 'UDP接続を終了
  37. udp.Close()
复制代码

Dim BCIP As System.Net.IPAddress
Dim EP As System.Net.IPEndPoint
Dim UDP As New System.Net.Sockets.UdpClient

这几个.net对象?vbs创建不了吧

QQ 20147578

TOP

谢谢,你的回答

TOP

印象中有 VBS 调用 winsock.ocx 发送 UDP 广播的例子。
我没有测试过,你可以试试。

1. 下载 winsock.ocx 与配套的 vb6.reg 。
2. 注册 winsock.ocx 。
3. VBS 创建 winsock 对象发送 UDP 广播。
『千江有水千江月』千江有水,月映千江;万里无云,万里青天。    http://yu2n.qiniudn.com/

TOP

有很多第三方远程开关机的CMD程序都可以很轻松实现上面功能,而且简单明了得多。我常用的一个是WolCmd.exe

TOP

返回列表