Comment obtenir toutes les données de NetworkStream

Je suis en train de lire toutes les données présentes dans la mémoire tampon de l'ordinateur connecté par le biais de TCP/IP mais je ne sais pas pourquoi je ne reçois pas toutes les données ,certaines données sont Manqués.
Voici le code que j'utilise ..

using (NetworkStream stream = client.GetStream())
{
    byte[] data = new byte[1024];
    int numBytesRead = stream.Read(data, 0, data.Length);
    if (numBytesRead > 0)
    {
       string str= Encoding.ASCII.GetString(data, 0, numBytesRead);
    }
}

S'il vous plaît dites-moi ce que je suis absent pour obtenir toutes les données de la machine.
Merci d'avance..

aucune chance que cela peut avoir quelque chose à voir avec le fait que vous êtes explicitement la lecture à plus de 1024 octets?
Ok, Donc comment puis-je lire toutes les données?
Ce qui est exactement manquant? Commencer du ruisseau, à la fin ou octets aléatoires? Êtes-vous en mesure de reconnaître fin du flux de données à partir de la séquence d'octets? Connaissez-vous la durée prévue des données?
Il en manque d'octets aléatoires.Et la longueur des données n'est pas connue, elle peut être n'importe quoi?
Non, il ne peut pas être n'importe quoi. Vous avez besoin de définir un protocole si vous ne voulez pas attendre jusqu'à ce que le client ferme la connexion. Autrement - continuer la lecture jusqu'à ce que le client ferme la connexion.

OriginalL'auteur shubham Hegdey | 2014-09-26