ASP.NET - COMMENT FAIRE DU TRANSFERT FTP À PARTIR D'UNE APPLICATION ASP.NET

Focalizer Messages postés 76 Date d'inscription dimanche 19 mai 2002 Statut Membre Dernière intervention 8 mai 2006 - 1 févr. 2003 à 18:32
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 - 6 juil. 2006 à 17:22
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/8982-asp-net-comment-faire-du-transfert-ftp-a-partir-d-une-application-asp-net

cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
6 juil. 2006 à 17:22
cyd2025 Messages postés 6 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 15 mai 2006
6 juil. 2006 à 16:38
Bonsoir,

effectivement, autant pour moi, je n'ai pas bien lu.

Auriez-vous une ou plusieurs idées de comment faire pour ajouter la couche d'upload depuis le client vers le serveur WEB puis faire le transfert FTP en asp.net (c#) .

J'ai commencer à regarder comment faire, et j'avoue qu'un coup de pouce serait le bien venu.

Merci d'avance pour votre aide
Cyd
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
6 juil. 2006 à 16:11
Bonjour,

J'ai beau relire le message, il n'y a nulle part où a été dit que cela fonctionne depuis un poste client.
Il s'agit bien de communication entre 2 serveurs.
Pour faire le passage depuis le client, vous devez ajouter la couche d'upload depuis le client vers le serveur WEB puis faire le transfert FTP.
Cordialement
Romelard Fabrice
cyd2025 Messages postés 6 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 15 mai 2006
6 juil. 2006 à 14:27
re bonjour,

en fait, j'ai trouvé ce qui ne vas pas :
j'ai tout fait en code behind en excution coté serveur.
Lorsque je passe à la fonction le chemin du fichier à uploader sur le poste client, en fait, il va le chercher sur le serveur, qui bien sur n'existe pas, c'est pour cela que l'upload échoue.

Comment avez-vous fait pour integrer ce bout code pour qu'il puisse s'executer sur le poste client et non sur le serveur ?
Avez-vous un exemple d'utilisation autre que la fonction ci-dessus ?

Merci d'avance,

Cyd
cyd2025 Messages postés 6 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 15 mai 2006
6 juil. 2006 à 09:22
Bonjour,

merci pour votre réponse Fabrice, et suite à celle-ci,
j'ai re-vérifié, et il s'avère qu'en fait, cela marche très bien tant que je lance la manip sur la même machine qui fait à ce moment là client & serveur.

Par contre, dès que je fait la même manipulation avec un client différent que la machine qui fait serveur web avec IIS(en réseau local ou via internet),
la fonction "Envoie.UploadFile" me renvoie "false".

Est-ce que quand vous avez mis en place votre application avec ce bout de code,
vous avez fait un paramètrage quelconque sur votre IIS et/ou dans les fichiers de paramètrages de votre application ?

Merci d'avance
Cyd
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
5 juil. 2006 à 16:51
Bonsoir,

Désolé mais je ne pourrais pas vous aider sur cette question

Cordialement
Romelard Fabrice
cyd2025 Messages postés 6 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 15 mai 2006
5 juil. 2006 à 15:33
Bonjour,

je viens d'intégrer ce code dans une application c# ASP.NET, et j'avoue que cela marche tip top car cela fait un moment que je cherche cette solution, donc un grand merci à ceux qui l'ont développé ;)
Cependant, j'ai qq soucis :


- Sur ma machine de developpement autonome :
si je suis en mode passif ou actif, le code fonctionne très bien


- Sur mon serveur IIS connecté sur le web à travers un routeur (les ports 20 et 21 sont ouverts et redirigés correctement) :

si je suis en mode actif :
l'upload s'arrête en cours de route et la fonction "Envoie.UploadFile" me renvoie "false" depuis un poste sur internet,
par contre fonctionne très bien tant que je reste dans mon réseau local.

si je suis en mode passif :
l'upload ne fonctionne pas aussi bien depuis mon réseau local que depuis un poste sur internetµ.
J'ai trappé l'erreur suivante : "Object reference not set to an instance of an object"
Erreur que je n'ai pas quand j'execute le code depuis mon poste de developpement autonome

Est-ce que quelqu'un a une solution, car là je bloque.
Faut configurer quelque chose de spécifique dans le fichier web.config ?
Sur IIS ?
Dans les fichiers de config du framework ASP.NET ?

Ma config :
IIS 5.x
Poste de dev : Win XP Pro avec Visual Studio .NET 2003, framework 1.1
Serveur : Win XP Pro avec IIS 5.x, framework 1.1

Merci d'avance
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
20 févr. 2006 à 22:42
Bonjour,

Est-ce que le serveur qui exécute le code arrive a résoudre le nom de domaine transmis.
Pour tester cela, donnez directement l'IP du serveur distant et exécutez le code.
Cordialement
Romelard Fabrice
cs_DeathAngel Messages postés 117 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 13 avril 2007
20 févr. 2006 à 18:09
Salut F_____, salut tout le monde
Je viens de récupérer ton source pour déposer des fichier xml sur un serveur ftp (rien de bien méchant).
Mais j'arrive pas à faire tourner. J'ai une erreur DNS du socket :
11004 : Le nom demandé est valide et a été trouvé dans la base de données, mais il ne dispose pas des données associées recherchées.

Cela se produit dans la fonction Connect(), 3ème ligne.
clientSocket.Connect(new IPEndPoint(Dns.Resolve(remoteAddress).AddressList(0), remotePort))

Je suppose qu'il ne trouve pas le serveur, mais c'est bizarre, car je me connecte très bien à la main (par IE), avec la même adresse.

Bref, si vous avez une petite idée, je suis preneur.

Merci et @peluche
DA
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
25 juil. 2005 à 15:49
Bonjour,
Ce n'est pas la taille du fichier qui va bloquer mais bien le time out.
Il faut donc modifier cette partie dans le script ou sur le serveur.
Romelard Fabrice.
ipfixe Messages postés 51 Date d'inscription jeudi 17 octobre 2002 Statut Membre Dernière intervention 12 janvier 2006 1
22 juil. 2005 à 21:40
Yep moi je cherche a savoir quelle est la limitation de la taille du fichier a uploader ??..!! il y'a surement un rapport avec TimeOut du serveur non ?
Krapno Messages postés 3 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 14 août 2003
14 août 2003 à 10:19
Salut, comment utiliser ce projet sans Visual Studio .NET ? Mon hébergeur supporte la technologie .NET, mon site est en ASP (tout court, écrit au bloc-note) et je voudrais pouvoir implémenter votre fonction mais je ne sais pas comment ? Merci de votre aide !
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
3 févr. 2003 à 14:23
Tu as toute la doc d'utilisation de la classe sur le site d'origine. Regarde dedans et dans le source des classe.
N'ayant pas de temps disponible je ne peux en faire plus.

F___
Focalizer Messages postés 76 Date d'inscription dimanche 19 mai 2002 Statut Membre Dernière intervention 8 mai 2006
1 févr. 2003 à 18:32
Salut,

J'ai voulu tester ta sources, aparament, la connection et tout cela marche bien. Mais lorsque je veux faire un getlist, tout ce qu'il me renvois c'est un true. j'airais préféré avoir le listing du dossier ;).

Peut-tu m'aider ?

Merci d'avance.
Rejoignez-nous