我是日本的服务台,虽然我一直在为自己的项目学习 Python,但现在我需要编写 VBScript,它将“Magic Packet”广播到呼叫中心的 200 多台 PC。
有人可以指导我如何实现这个目标或简单地教我代码吗?
比如我们公司的合规性不允许我下载任何免费软件,但是如果我能打开它并用.txt复制源代码并将其带入公司就可以了....
或者...我在下面找到了一些 VB6 脚本,我相信这正是我所需要的,所以也许有人可以将它翻译成 VBS?
Dim strIP As String = "192.168.1.1" 'IPアドレス
Dim strMAC As String = "00-00-00-00-00-00" 'マックアドレス
'送信データを作成
Dim intCounter As Integer = 0
Dim sendBytes(0 To 101) As Byte
'最初に&hFFを6個付ける
For I = 1 To 6
sendBytes(intCounter) = &HFF
intCounter += 1
Next
'MACアドレスを16回繰り返す
For I = 1 To 16
'MACアドレス読込み
For J = 0 To 5
'16進数を変換して読込み
sendBytes(intCounter) = Byte.Parse(strMAC.Substring(J * 3, 2), Globalization.NumberStyles.HexNumber)
intCounter += 1
Next
Next
'データを送信するポート番号
Dim RemotePort As Integer = 2304 '何でも良い
'送信先IP指定(ブロードキャストとピンポイントの両方に送信してみる)
Dim BCIP As System.Net.IPAddress
Dim EP As System.Net.IPEndPoint
Dim UDP As New System.Net.Sockets.UdpClient'UDP接続
'ブロードキャストアドレス指定で送信するとき
BCIP = System.Net.IPAddress.Parse("255.255.255.255")
EP = New System.Net.IPEndPoint(BCIP, RemotePort)
'送信先を指定してデータを送信する
UDP.Send(sendBytes, sendBytes.Length, EP)
'ピンポイントのIPアドレス指定して送信するとき
BCIP = System.Net.IPAddress.Parse(strIP)
EP = New System.Net.IPEndPoint(BCIP, RemotePort)
'送信先を指定してデータを送信する
UDP.Send(sendBytes, sendBytes.Length, EP)
'UDP接続を終了
udp.Close()
我知道这种愚蠢的开放式问题会激怒一些中级技术人员,所以如果您对此感到不舒服,请忽略我。