VBScript/JScript网络编程:连接UDP或TCP

5
如何使用独立的VBScript或JScript文件连接到本地主机的端口,UDP或TCP(最好是UDP)?我需要向本地主机的某个端口发送一个命令。该命令很小,不会有任何数据包丢失到本地主机(即使有,也不会那么糟),这就是为什么UDP非常适合,只需发送一个数据包即可。

但是我现在很难找到任何关于VBScript或JScript网络的示例。

我不关心Windows XP之前的任何内容。

1个回答

7
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

现在,真正的问题是:Windows是否有用于与原始套接字进行交互的ActiveX/COM对象?简短的答案是不,但你有替代方案。

  • 有一个名为mswinsck.ocx的“Winsock ActiveX”库,它随着Visual Studio(版本6及更早版本)一起发布。尽管如此,让这个库正常工作可能会有点棘手,因为它是用于Visual Basic而不是VBScript。

  • 你可以从第三方购买一个。

  • 你可以编写自己的库。但这可能会带来更多麻烦,因为你需要跨越VBScript的限制,编写一个适用于此的程序可能更简单。

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


我认为使用HTTP层并不是什么大问题。感谢您提供如此完整的答案。 - 700 Software

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接