我有一個偵聽TCP/IP連接的Windows服務。當我運行該服務時,出現錯誤「通常只允許使用每個套接字地址(協議/網絡地址/端口)」。我可以在控制檯應用程序中運行代碼而不會出現問題。Windows TCP/IP偵聽器服務「每個套接字地址(協議/網絡地址/端口)通常只允許使用一個」
服務,並開始在自己的線程創建監聽器:
protected override void OnStart(string[] args)
{
this.tcpListener = new TcpListener(IPAddress.Parse(IpAddress.Any), 8100);
this.listenThread = new Thread(new ThreadStart(ListenForClients));
this.listenThread.Start();
}
啓動監聽器:
private void ListenForClients()
{
this.tcpListener.Start(); //<-----Produces the error
System.Threading.Thread.Sleep(5000);
this.tcpListener.Stop();
}
您確定您的開發環境尚未在該端口上偵聽嗎?也許一個冷凍的控制檯應用你停止線程並關閉端口? – 2015-03-08 21:16:32
就是這樣,謝謝。 – jmyns 2015-03-09 01:12:48