示例#1
0
 private void Listen()
 {
     ThreadPool.QueueUserWorkItem(delegate
     {
         Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
         listener.Bind(FileTransmiter.RealEndPoint);
         listener.Listen(FileTransmiter.MaxThreadCount);
         while (true)
         {
             if (listener.Blocking)
             {
                 Socket client = listener.Accept();
                 if (this.InvokeRequired)
                 {
                     this.Invoke(new Action <Socket>(AddClient), client);
                 }
                 else
                 {
                     AddClient(client);
                 }
                 worker = new FileTransmiter.ReceiveWorker(client);
                 FileTransmiter.SupperReceive(client, ConfigurationManager.AppSettings["path"], worker, new Action <string, int, bool, double>(ReportStatus), new Action <string, long>(ReportSpeed));
             }
         }
     });
 }
示例#2
0
 static void Main(string[] args)
 {
     //FileTransmiter.Receive(FileTransmitor.TestIP, @"E:\");//接受放到那个盘里 保存路径=这个参数+发送到文件名。
     Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
     listener.Bind(FileTransmiter.TestEndPoint);
     listener.Listen(FileTransmiter.MaxThreadCount);
     FileTransmiter.ReceiveWorker worker = new FileTransmiter.ReceiveWorker(listener.Accept());
     FileTransmiter.SupperReceive(listener, @"F:\Test", worker);
     Console.ReadLine();
 }
示例#3
0
        static void Main(string[] args)
        {
            //FileTransmiter.Receive(FileTransmitor.TestIP, @"E:\");//接受放到那个盘里 保存路径=这个参数+发送到文件名。
            Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

            listener.Bind(FileTransmiter.TestEndPoint);
            listener.Listen(FileTransmiter.MaxThreadCount);
            FileTransmiter.ReceiveWorker worker = new FileTransmiter.ReceiveWorker(listener.Accept());
            FileTransmiter.SupperReceive(listener, @"F:\Test", worker);
            Console.ReadLine();
        }
示例#4
0
 private void Listen()
 {
     ThreadPool.QueueUserWorkItem(delegate
     {
         Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
         listener.Bind(FileTransmiter.RealEndPoint);
         listener.Listen(FileTransmiter.MaxThreadCount);
         while (true)
         {
             if (listener.Blocking)
             {
                 Socket client = listener.Accept();
                 if (this.InvokeRequired)
                     this.Invoke(new Action<Socket>(AddClient), client);
                 else
                     AddClient(client);
                 worker = new FileTransmiter.ReceiveWorker(client);
                 FileTransmiter.SupperReceive(client, ConfigurationManager.AppSettings["path"], worker, new Action<string, int, bool, double>(ReportStatus), new Action<string, long>(ReportSpeed));
             }
         }
     });
 }