Buongiorno: mi stavo occupando di un programma client(interfaccia grafica) - server (console), in cui il client chiede al server una particolare tipologia di file video (praticamente gliene chiede solo alcune parti) ed il server, in cui è allcoato il file, glielo deve trasmettere in dietro. Per ora la richiesta arriva ed il server genera il file modificato ma non lo ritrasmette. Allego il codice:

codice:
Client

using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;

namespace SVCAnalyzerWin3Client
{
    public partial class Form1 : Form
    {
        private NetworkStream streamToServer;
        static BinaryWriter bw = new BinaryWriter(File.Create("out2.bin"));

        private int Run(string message)
        {
            int counter = 0;
            for (; ; )
            {
                if (counter == 1000)
                {
                    listBox1.Items.Add("Sending" + message + "to server.");
                    System.IO.StreamWriter writer = new System.IO.StreamWriter(streamToServer);
                    writer.WriteLine(message);
                    writer.Flush();
                    System.IO.StreamReader reader = new System.IO.StreamReader(streamToServer);
                    string strResponse = reader.ReadLine();
                    listBox1.Items.Add("Received: " + strResponse);
                    streamToServer.Close();
                    counter = 0;
                }
                else counter++;
            }
        }

        public Form1()
        {
            InitializeComponent();
            textBox1.Text = "out.bin";
            textBox2.Text = "192.168.1.9";
        }


        private void button3_Click(object sender, EventArgs e)
        {
            byte dependency = (byte)numericUpDown1.Value;
            byte quality = (byte)numericUpDown2.Value;
            byte temporal = (byte)numericUpDown3.Value;
            using (TcpClient client = new TcpClient(textBox2.Text, 10000))
            using (NetworkStream n = client.GetStream())
            {
                BinaryWriter w = new BinaryWriter(n);
                w.Write((byte) 0);
                w.Write(dependency);
                w.Write(quality);
                w.Write(temporal);
                w.Flush();
                for (int i=0;i<140 ;i++ )
                {
                    bw.Write(n.ReadByte());
                }
                n.Close();
            }
        }

        private void button4_Click(object sender, EventArgs e)
        {
            byte priority = (byte)numericUpDown4.Value;
            using (TcpClient client = new TcpClient(textBox2.Text, 10000))
            using (NetworkStream n = client.GetStream())
            {
                BinaryWriter w = new BinaryWriter(n);
                w.Write((byte) 1);
                w.Write(priority);
                w.Flush();
                listBox1.Items.Add(new BinaryReader(n).ReadString());
                for (int j=0;j<140 ;j++ )
                {
                    bw.Write(n.ReadByte());
                }
                n.Close();
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {

        }

        private void button2_Click(object sender, EventArgs e)
        {
            listBox1.Items.Clear();
        }

        private void numericUpDown1_ValueChanged(object sender, EventArgs e)
        {

        }

        private void numericUpDown2_ValueChanged(object sender, EventArgs e)
        {

        }

        private void numericUpDown3_ValueChanged(object sender, EventArgs e)
        {

        }

        private void numericUpDown4_ValueChanged(object sender, EventArgs e)
        {

        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        private void label6_Click(object sender, EventArgs e)
        {

        }
    }
}