我有一个总是监听6002端口的插件,我有一个ASP.net应用程序,它向相同的端口发送消息并从相同端口的插件接收回复,发送工作正常,插件在相同的端口发送回复,但我不知道如何捕捉这个回复,当我尝试使用Tcplistener侦听相同的端口时,启动方法抛出这个异常:每个套接字地址(协议/网络地址/端口)通常只允许使用一次。
有没有办法捕捉收到的致谢信息?
发布于 2011-05-21 14:44:45
我已经用这种方法解决了这个问题,我知道这是旧的方法,但它是有效的!!:
'/*Variables Initialization*/
dim objSocket, strServicePort, strIpAddr, strResult, strMsgTo, strMsgResponse
strServicePort = "6002"
strIpAddr = "127.0.0.1"
'/* Create a TCP/IP socket. */
objSocket = Server.CreateObject("Intrafoundation.TCPClient.3")
objSocket.ClearLog()
'/* Establish socket connection. */
objSocket.Open (strIpAddr,strServicePort)
objSocket.Timeout=60.0
strMsgTo ="---- Message here ----"
'/* Send request message to plugin */
objSocket.SendRN(strMsgTo)
'/* receive XML Request Message from plugin */
strMsgResponse = objSocket.Recv()
strMsgResponse = Replace(strMsgResponse, vbLf, "")
objSocket.Close()发布于 2011-05-19 21:15:57
简而言之,不是。
一旦端口打开,如果进一步尝试使用来自不同来源的相同端口-就像您现在正在经历的那样,将会抛出一个异常。没有办法绕过这一点。
https://stackoverflow.com/questions/6059149
复制相似问题