VBScript/JScript网络:连接UDP或TCP

Bry*_*eld 5 vbscript udp

如何使用独立的VBScript或JScript文件连接到localhost上的端口,UDP或TCP(最好是UDP)?我需要向localhost上的某个端口发送命令.命令很小,本地主机不会有任何丢包(即使有,也不会那么糟糕),这就是为什么UDP工作得很好,只需发送一个数据包.

但目前我很难找到有关VBScript或JScript网络的任何示例.

在Windows XP之前我什么都不关心.

jve*_*zey 6

VBScript和JScript本身不具备直接使用套接字的能力.这是什么语言允许你做的是与具有使用套接字能力的ActiveX/COM对象进行交互.

例如,您可以使用MSXML2.XMLHTTP与HTTP/HTTPS服务器通信.

Dim objHTTP
Set objHTTP = CreateObject("MSXML2.XMLHTTP")
objHTTP.open "GET", "http://www.google.com", false
objHTTP.send 
WScript.Echo objHTTP.responseText
Run Code Online (Sandbox Code Playgroud)

现在,真正的问题.Windows是否有用于与原始套接字交互的ActiveX/COM对象?这里简短的回答是"否",但你确实有其他选择.

  • 有一个名为mswinsck.ocx的"Winsock ActiveX"库,它带有非常旧版本的Visual Studio(版本6及更早版本).虽然,让这个库工作会有点棘手,因为它本来是从Visual Basic而不是VBScript使用的.

  • 您可以从第三方购买一个

  • 你可以自己.不过,这可能比它的价值更麻烦.到目前为止,您将在VBScript之外踩到它,以便放弃VBScript并为此编写适当的程序会更简单.

  • 您可以切换到更详细的语言,如ActiveState PerlPython.两者都有套接字的原生支持,但同样,这可能超出了你的舒适区.