Problème FTP upload

Signaler
Messages postés
3
Date d'inscription
samedi 20 mars 2010
Statut
Membre
Dernière intervention
7 novembre 2010
-
Messages postés
3
Date d'inscription
samedi 20 mars 2010
Statut
Membre
Dernière intervention
7 novembre 2010
-
Bonjour à tous,

Après un très long moment j'ai finalement réussi à créer mon FTP uploader (avec de l'aide).

Tout fonctionne à merveille, mais dès que j'essais d'uploader un fichier de bonne taille, il me dit l'erreur qui suit:

"La connexion sous-jacente a été fermée une erreur inattendue s'est produite lors de la réception"

Je suis sous Windows 7, voici mon code,

        private void Upload(string filename)
        {

            FileInfo fileInf = new FileInfo(filename);

            string uri uri "ftp://" + textBox2.Text + "/" + fileInf.Name;

            FtpWebRequest reqFTP;

            
            reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://ftp.MON SITE.net/" + fileInf.Name));

          
            reqFTP.Credentials = new NetworkCredential("***********", "*********");
            
                        

            reqFTP.KeepAlive = false;

            reqFTP.Method = WebRequestMethods.Ftp.UploadFile;

            
            reqFTP.UseBinary = true;

            
            reqFTP.ContentLength = fileInf.Length;

            
            int buffLength = 999999999;
            byte[] buff = new byte[buffLength];

            int contentLen;

            
            FileStream fs = fileInf.OpenRead();
            
            

            try
            {

                
                Stream strm = reqFTP.GetRequestStream();

                
                contentLen = fs.Read(buff, 0, buffLength);

                
                while (contentLen != 0)
                {

                    
                    strm.Write(buff, 0, contentLen);

                    contentLen = fs.Read(buff, 0, buffLength);

                }

                
                strm.Close();

                fs.Close();
                MessageBox.Show("Fini");
            }



            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Upload Error");

            }



je me débrouille en anglais et un peu en programmation C#,

Merci de votre aide future.

Themoder
A voir également:

2 réponses

Messages postés
3
Date d'inscription
samedi 20 mars 2010
Statut
Membre
Dernière intervention
7 novembre 2010

Bonsoir à tous,

J'ai répondu à mon problème tout seul, voici le code que j'ai ajouté

   
reqFTP.Timeout = 999999999;
reqFTP.ReadWriteTimeout = 999999999;
reqFTP.KeepAlive = true;


et maintenant j'ai 1 problème et une question

problème: Il me dit la même erreur mais vers la fin du transfert au lieux du début.

Question: Au momment exacte ou je clic sur transmettre, la page se fige durant tout le transfert, je ne peux pas fermer la page, ni la déplacer meme la progress bar (marquee) ne bouge plus. comment je corrige cela ?

Merci de votre aide.

themoder
Messages postés
3
Date d'inscription
samedi 20 mars 2010
Statut
Membre
Dernière intervention
7 novembre 2010

Rebonjour à tous,

J'ai finalement résolu mon problème !!! j'ai simplement enlevé les lignes,

strm.Close();
fs.Close();

comme je suis un peu débutent je voudrais savoir à quoi cest deux lignes servent et si je ne devrais vraiment pas les enlever !

Merci de votre aide donc je l'espère, future !