1
Windows 7에서 Visual Studio 2010과 함께 C#을 사용하고 있습니다.
2 주 정도의 소켓 프로그래밍에 대해 배우기 위해 간단한 서버/클라이언트 예제를 시도해 보았습니다. 디버깅 나는이 예외 (액세스 권한에 의해 금지 된 방식으로 소켓에 액세스하려고했습니다). 나는 방화벽과 안티 바이러스를 꺼 버렸다. 또한 보안 탭을 확인하고 완전 신뢰를 설정했습니다.은 허가로 인해 소켓에 액세스 할 수 없습니다
Windows 7에서 TCP를 사용할 수 없다는 기사를 많이 읽었지만 문제가 없습니다. 여전히 작동하지만 컴퓨터를 다시 시작하면됩니다. 그러나 실행해야 할 때마다 다시 시작하는 것은 해결책이 아닙니다.
어떤 아이디어 ??
갱신 :
static void Main(string [] args)
{
Program progDomain = new Program();
progDomain.clients = new List<ClientManager>();
if (args.Length == 0)
{
progDomain.serverPort = 8000;
progDomain.serverIP = IPAddress.Any;
}
if (args.Length == 1)
{
progDomain.serverIP = IPAddress.Parse(args [0]);
progDomain.serverPort = 8000;
}
if (args.Length == 2)
{
progDomain.serverIP = IPAddress.Parse(args [0]);
progDomain.serverPort = int.Parse(args [1]);
}
progDomain.bwListener = new BackgroundWorker();
progDomain.bwListener.WorkerSupportsCancellation = true;
progDomain.bwListener.DoWork += new DoWorkEventHandler(progDomain.StartToListen);
progDomain.bwListener.RunWorkerAsync();
Console.WriteLine("*** Listening on port {0}{1}{2} started.Press ENTER to shutdown server. ***\n",progDomain.serverIP.ToString(),":",progDomain.serverPort.ToString());
Console.ReadLine();
progDomain.DisconnectServer();
}
private void StartToListen(object sender , DoWorkEventArgs e)
{
this.listenerSocket = new Socket(AddressFamily.InterNetwork , SocketType.Stream , ProtocolType.Tcp);
this.listenerSocket.Bind(new IPEndPoint(this.serverIP , this.serverPort));
this.listenerSocket.Listen(200);
while (true)
this.CreateNewClientManager(this.listenerSocket.Accept());
}
여기에 코드를 어디에 예외 화재의 조각입니다. 처음부터 바로 시작된 이래로 그 어느 것도 없습니다.
사용중인 코드를 제공 할 수 있습니까? –
어떤 포트를 사용하고 있습니까? – rekire
@rekire 로컬 호스트 : 8000 – Katia