public async void StartServer()
{
try
{
httpListener = new HttpListener();
httpListener.Prefixes.Add("http://102.172.45.123:1222/");
httpListener.Start();
}
catch (Exception ex)
{
Console.WriteLine("Error in connection: " + ex.Message);
}
}
捕获异常:
System.Net.HttpListenerException:“该进程无法访问该文件,因为该文件正在被另一个进程使用”
1)更改端口
也许您之前已经启动了该应用程序,然后关闭了该应用程序,但是该进程没有被终止或关闭,因此使用的端口没有被释放。 我建议您在关闭应用程序时关闭套接字。 例如,如果您在 Windows 窗体应用程序中使用
protected override void OnClosed(EventArgs e)
{
StopSocket();
base.OnClosed(e);
}
这将停止套接字并释放使用的端口。
2)另一件事是,据我所知,服务器将在
127.0.0.1
上提供服务