begin process at 2012 02 11 05:33:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Réseau & Internet

 > 

Client - Serveur

 > 

Upload FTP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Upload FTP

jeudi 10 juillet 2008 à 15:17:01 | Upload FTP

ansizak

Bonjour,

Je travaille actuellement sur un programme dans lequel je dois effectuer un upload des fichiers contenus dans un repertoire.

J'utilise la procédure suivante:

WebClient wc = new WebClient();
            foreach (string image in System.IO.Directory.GetFiles("c:\\KK\\temp\\temp2"))
            {
               
                   wc.UploadFile("ftp://" + Settings_var.log + ":" + Settings_var.pass + "@" + Settings_var.host, "STOR", image);
            
            }


Malheureusement, il ne se produit absolument rien.
En plaçant un espion sur l'expression "wc.UploadFile("ftp://" + Settings_var.log + ":" + Settings_var.pass + "@" + Settings_var.host, "STOR", image);" apparait le message suivant: "cette expression provoque des effets secondaires et ne sera pas évaluée...

J'ai tenté d'utiliser la librairie EDTFTP via le code suivant:

FTPClient ftp = new FTPClient(Settings_var.host);
            ftp.Login(Settings_var.log, Settings_var.pass);
            foreach (string image in System.IO.Directory.GetFiles("c:\\KK\\temp\\temp2"))
            {
                ftp.Put(image, image, true);
            }
Même résultat: rien et toujours le même message sur l'espion...

Auriez vous une idée ?

En vous remerciant par avance,
Cordialement,
Anz.

vendredi 11 juillet 2008 à 18:23:36 | Re : Upload FTP

ansizak

Toujours pas d'idées ? :s

vendredi 11 juillet 2008 à 19:42:29 | Re : Upload FTP

niky

Membre Club
Salut,

Je me permet de te répondre ne te proposant une autre solution que celle que tu emploies.

Le code suivant permet d'obtenir un flux ouvert en écriture sur un serveur FTP :

            FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://domaine.com/fichier.ext");
            CredentialCache cred = new CredentialCache();
            cred.Add("ftp://domaine.com/fichier.ext",
                        "Basic",
                        new NetworkCredential("login", "password"));
            request.Credentials = cred;
            request.Method = WebRequestMethods.Ftp.UploadFile;
            System.IO.Stream stream = request.GetRequestStream();

J'espère que ça pourra t'aider.
dimanche 13 juillet 2008 à 21:22:57 | Re : Upload FTP

ansizak

Bonjour et merci à toi,

Je n'arrive pas à saisir à quel moment tu définit le path en local du fichier à envoyer vers le ftp.
Pourrais-tu m'éclaircir ce point ?

Merci encore de ton attention,
Cordialement,

Anz.
dimanche 13 juillet 2008 à 21:54:49 | Re : Upload FTP

niky

Membre Club
C'est que je ne le défini pas.
Lorsque tu fais appelles à request.GetRequestStream(), tu obtiens un flux ouvert en écriture. A toi d'écrire ce que tu veux dedans.

Typiquement, à toi d'ouvrir un fichier en lecture et d'écrire ce que tu lis dans le flux FTP.

lundi 14 juillet 2008 à 14:49:20 | Re : Upload FTP

ansizak

Hmm,
Donc la méthode getRequestStream() ouvre une boîte de dialogue ? Parce qu' au final, j'ai toujours du mal à saisir à quel moment il va m'être proposé de définir le chemin vers le fichier.

Mais je vais tester ça et revenir vers toi en cas d'incompréhension. Merci encore.
lundi 14 juillet 2008 à 15:07:51 | Re : Upload FTP

niky

Membre Club

V'là la solution :

            // Ouverture d'un fichier
            using (System.IO.FileStream fs = new System.IO.FileStream(@"c:\monfichier.txt", System.IO.FileAccess.Read))
            {
                // Déclaration d'un tampon de lecture de 255 octets (c'est arbitraire comme valeur)
                byte[] buffer = new byte[0xff];
                int count = 0;
                // Lit dans le fichier jusqu'à arriver au bout du fichier
                while ((count = fs.Read(buffer, 0, 0xff)) > 0)
                {
                    // Ecrit dans le flux FTP
                    stream.Write(buffer, 0, count);
                }
            }

// ... et on n'oublie pas de fermer le flux FTP
stream.Close();
stream.Dispose();


mardi 15 juillet 2008 à 21:43:02 | Re : Upload FTP

ansizak

Oki merci bien :)

Sinon une idée de la signification de la phrase : ""cette expression provoque des effets secondaires et ne sera pas évaluée" ?
Car maintenant elle apparait sur des méthodes qui fonctionnait très bien jusqu'alors et qui se mettent tout à coup à ne plus fonctionner: du style System.IO.Directory.Getfilename...

Cordialement,
Anz
mardi 15 juillet 2008 à 21:51:58 | Re : Upload FTP

niky

Membre Club
Réponse acceptée !
Le débuggeur de Visual Studio te permet de visualiser l'état de tes variables en temps réel. C'est à dire que tu peux parcourir l'état mémoire des classes avec liens qui les unissent et la valeur des attributs.
Toutefois, comment veux-tu que Visual Studio t'affiche le résultat d'une méthode ? Pour qu'il puisse le faire, il faudrait qu'il l'exécute. Mais s'il l'exécute, est-ce que cette exécution est réversible ? (exemple : la méthode supprime tous les fichiers du disque et renvoie le nombre de fichiers supprimés) est-ce que cette méthode est exécutable ? (exemple : ses préconditions ne sont remplies dans l'état actuel du programme / la méthode prend des arguments... comment Visual Studio doit-il les remplir ?), etc.

C'est pourquoi il te dit : "Cette expression provoque des effets secondaires et ne sera pas évaluée".


Cette discussion est classée dans : ftp, upload, image, var, settings


Répondre à ce message

Sujets en rapport avec ce message

Mise à jour du contrôle Image [ par cantonaifou ] Cette fois ci j'ai un pb avec la mise à jour d'une image. Je m'explique. Dans mon prog je fait l'upload d'images via mon interface web que j'affiche [C#] Upload fichier par ftp [ par Nichiren ] Bonjour,je souhaite créer un petit logiciel qui au lancement crée un serveur ftp , et qui a la possibilité d'envoyer un fichier ftp sur un autre ftp. fonction récursive [ par khabdou ] Salut,j'ai un problem au cours de l'execution du code développer avec VS2005(enoncé aprés) il se lance une exception de type "System.StackOverflowExce Problème FTP upload [ par themoder ] 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 q Upload FTP bloque a 50% [ par Perecastorr ] Bonjour, J'ai avec moi un problème bien particulier, et il y en a qui adore cela [^^happy17]! J'ai une classe qui s'occupe de différent transfert vi coordonée clique souris [ par chasseurdedemon ] bonjour, J'ai besoin pour mon programme de connétre les coordoné de la souris lor d'un clique . exemple : j'ai une image lors d'un clique sur l'imag Bandeau d'image(cliquable) dans un formulaire Winform [ par partales ] bonjour, Je cherche à faire une sorte de bandeau d'image cliquable dans un formulaire. Seulement, j'aurais souhaité pouvoir le courber (le bandeau) d Découper une image en WPF [ par xmox667 ] Salut à tous, Qui saurait comment on découpe une image comme un puzzle en wpf ? Merci Handle d'un objet Image [ par ellandebasque ] Bonjour, je vous remercie de prendre le temps lire mon message. Je vous expose mon problème. Je dispose de 2 caméras. Je cherche à faire un petit l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,030 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales